一:起因
(1)拿出自己年初实现的list,第一次用c++类实现list或者说第一次写一个工程上用到的list类,在和如今实现的list对比,心情无比复杂;
(2)说明了一点,我也曾经幼稚过,现在还比较幼稚,但我相信,只要坚持最初梦想的人,终究会走向成熟;
(3)更加详细的比较全的list 请看 STL list类源代码实现
(4)再次感谢自己能坚持最初的梦,相信你也有一个类似的梦;不要羡慕别人天赋,别人的成功是无法复制的,别人的辉煌是不会重演的;唯有我们自己脚踏实地的走好每一步,播下我们自己梦想的种子,大步向前。
二:详细代码如下:以下是代码和一些个人心得,欢迎大家指点~
(1)LinkList类的简单实现
struct Node
{
int data;
Node *next;
};
class LinkedList
{
public:
LinkedList(const int &n);// n 链表长度
LinkedList(const LinkedList &aplist);
~LinkedList();
void display();
void insert_before(const int &key,const int &toinsert);
void del(const int &todelete);
Node* find_key(const int &key);
void distroy();
int getLength();
private:
Node *head;
Node *cur;
};// 类的后面和 结构体一样,必须加 分号 (;)
LinkedList::LinkedList(const int &n)
{
head = new Node;
head->data = -1;// 此元素是一个标示符
head->next = NULL;// init head
Node *p = head;// p in the left of cur
int i;
cout << "请输入链表序列:" << endl;
for(i=0;i<n;i++)
{
cur = new Node;
cin >> cur->dat