摘要: 这是一个系列的文章,主要目的是让初学者掌握链表的实现方法,并且从C过渡到C++。作者:重庆工程职业技术学院 万青在第1篇文章中,由于采用C语言实现,数据和操作是分离的,对链表的操作(如add、del、insert)中都包含一个参数List *li。下面将采用C++实现,由于类的方法中隐含有this指针,在本类的方法中访问成员head、tail和length的时候,不再需要li作为参数。也就是说,C版本中的li->head变成了this->head,而“this->”是可以省略的,所以直接写head。另外,C++类中有构造函数和析构函数,所以创建链表的工作在构造函数中完成,清除 阅读全文
posted @ 2012-12-22 17:13 CQVIE 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 这是一个系列的文章,主要目的是让初学者掌握链表的实现方法,并且从C过渡到C++。作者:重庆工程职业技术学院 万青本文设计一个带头结点的单向链表。和很多教程不同的是,采用了结构体来存储链表的首、尾指针和长度,并把结构体命名为List:typedef struct list{ Node *head,*tail; int length;}List;这样设计能很好地管理链表相关属性,并且在操作时能提供一些便利。下面的代码实现了链表的一些常用操作: 1 #include<stdio.h> 2 #include<malloc.h> 3 typedef struct node 4 { 阅读全文
posted @ 2012-12-22 16:43 CQVIE 阅读(279) 评论(0) 推荐(0) 编辑