【练习3.3】

通过之调整指针(而不是数据)来交换两个相邻的元素,使用

a.单链表

b.双链表

 

Answer:

先放测试代码,折叠标题可以看到分别是哪种链表的测试。

实测可满足题意,但单链表和双链表的两段代码是分开实现的,所以需要分开测试。

如果要合在一起的话,需要改一下头文件包含以及命名空间。

单链表测试代码:

 1 #include <iostream>
 2 #include "linklist.cpp"
 3 using namespace std;
 4 using namespace linklist;
 5 template class List<int>;
 6 int main(void)
 7 {
 8     List<int> number;
 9 
10     //原始链表
11     cout << "/*additem()*/" << endl;
12     number.additem(2);
13     number.additem(3);
14     number.additem(5);
15     number.additem(7);
16     number.additem(11);
17     number.additem(13);
18     number.additem(17);
19     number.traverse();
20     cout << "\n/*end*/\n\n" << endl;
21 
22     //测试交换顺序,头节点与中间节点各一
23     cout << "/*swappos()*/" << endl;
24     number.swappos(number.find(11));
25     number.swappos(number.find(2));
26     number.traverse();
27     cout << "/*end*/\n\n" << endl;
28 
29     system("pause");
30 }
View Code

相关文章:

  • 2021-07-08
  • 2022-12-23
  • 2022-01-18
  • 2021-10-08
  • 2021-11-28
  • 2021-08-09
  • 2022-01-25
  • 2022-12-23
猜你喜欢
  • 2022-02-04
  • 2021-10-26
  • 2021-11-25
  • 2022-02-18
  • 2022-01-19
  • 2021-06-21
相关资源
相似解决方案