双向链表
//大家一定要注意:教科书不会告诉你 项目上如何用;哪些点是项目的重点;
做一个企业级的财富库,完成你人生开发经验的积累,是我们的学习重点,要注意!
1、基本概念
单链表的结点都只有一个指向下一个结点的指针
单链表的数据元素无法直接访问其前驱元素
逆序访问单链表中的元素是极其耗时的操作!
len = LinkList_Length(list);
for (i=len-1; len>=0; i++) //O(n)
{
LinkListNode *p = LinkList_Get(list, i); //O(n)
//访问数据元素p中的元素
//
}
双向链表的定义
在单链表的结点中增加一个指向其前驱的pre指针
双向链表拥有单链表的所有操作
创建链表
销毁链表
获取链表长度
清空链表
获取第pos个元素操作
插入元素到位置pos
删除位置pos处的元素
2、设计与实现
删除操作
双向链表的新操作
获取当前游标指向的数据元素