(四)双向链表的设计与实现

双向链表的设计与实现

1.概念

    在单链表的结点中增加一个指向其前驱的pre指针。


双向链表拥有单链表的所有操作。

2.设计与实现

    (1)插入操作

a. 插入第一个元素异常处理:

        if(next != NULL) {next->pre = node; }node->pre = current;

b.在0号位置处插入元素:

        新来结点node前pre指向null。即:node->pre = NULL;

        

(2)删除操作


3.优点和缺点

    优点:

        1.双向链表在单链表的基础上增加了指向前驱的指针

        2.功能上双向链表完全可以取代单链表使用

        3.双向链表的current、pre和next的操作可以高效的遍历链表中的所有元素

    缺点:

        代码复杂

猜你喜欢

转载自blog.csdn.net/ailunlee/article/details/79889086
今日推荐