摘要: 双向链表中的每一个元素都由3部分组成:除了数据成员、next指针外,每个元素还包含一个指向其前驱元素的指针,称为prev指针。双向链表的组成是这样的:将一些元素链接在一起,使得每个元素的next指针都指向其后继的元素,而每个元素的prev指针都指向其前驱元素。 阅读全文
posted @ 2017-11-18 20:27 DreamGo 阅读(1071) 评论(0) 推荐(0) 编辑
摘要: 结构体List则表示链表这种数据结构(见示例1)。这个结构由5个成员组成:size表示链表中元素个数;match并不由链表本身使用,而是由链表数据结构派生而来的新类型所使用;destroy是封装之后传递给list_init的析构函数;head是指向链表中头结点元素的指针;tail则是指向链表中末尾结点元素的指针。 阅读全文
posted @ 2017-11-18 08:07 DreamGo 阅读(1680) 评论(0) 推荐(0) 编辑
摘要: 链表可以说是一种最为基础的数据结构。链表由一组元素以一种特定的顺序组合或链接而成,在维护数据的集合时很有用。这一点同我们常用的数组很相似。然而,链表在很多情况下比数组更有优势。特别是在执行插入和删除操作时链表拥有更高的效率。链表需要动态的开辟存储空间,也就是存储空间是在程序运行时分配的。由于在很多应用中数据的大小在编译时并不能确定,因此这种动态分配空间的特性也是链表的一个优点。 阅读全文
posted @ 2017-11-17 21:40 DreamGo 阅读(2418) 评论(0) 推荐(0) 编辑