这种基础例程,如之前所提,会有一个实现和一个简单的测试代码。
链表其实没什么可说的,其实包括后面的栈和队列也没什么可说的,直接放代码吧。
下面这个是测试代码
1 #include <iostream> 2 #include "linklist.h" 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.traverse(); 18 cout << "\n/*end*/\n\n"<< flush; 19 20 //测试获取长度 21 cout << "/*length()*/" << endl; 22 cout << number.size() << endl; 23 cout << "/*end*/\n\n" << flush; 24 25 //测试获得头元素 26 cout << "/*getfirst()*/" << endl; 27 cout << number.getfirst() << endl; 28 cout << "/*end*/\n\n" << flush; 29 30 //测试删除存在的元素 31 cout << "/*remove()*/" << endl; 32 number.remove(5); 33 number.traverse(); 34 cout << "\n/*end*/\n\n" << flush; 35 36 //测试删除不存在的元素 37 cout << "/*remove()*/" << endl; 38 number.remove(13); 39 cout << "/*end*/\n\n" << flush; 40 41 //测试清空,并测试从空表中删除元素 42 cout << "/*clear(),remove()*/" << endl; 43 number.clear(); 44 number.remove(2); 45 cout << "/*end*/\n\n" << flush; 46 47 system("pause"); 48 }