首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

狂言数据结构五:线性表的链式存储结构(双向链表)

2013-10-10 
大话数据结构五:线性表的链式存储结构(双向链表)1. 双向链表:在单链表的每个结点中,再设置一个指向其前驱

大话数据结构五:线性表的链式存储结构(双向链表)

1. 双向链表:在单链表的每个结点中,再设置一个指向其前驱结点的指针域,那么在双向链表中的结点都有两个指针域,一个指向直接后继,另一个指向直接前驱。

2. 单链表和双向链表比较:

单链表:总是要从头到尾找结点,只能正遍历,不能反遍历。

双向链表: 可以从头找到尾,也可以从尾找到头,即正反遍历都可以,可以有效提高算法的时间性能,但由于每个结点需要记录两份指针,所以在空间占用上略多一点,这就是通过空间来换时间。

3. Java实现双向链表:

public class Main {public static void main(String[] args) {DoubleLinkedList<Integer> dll = new DoubleLinkedList<Integer>();dll.addBeforeHead(2);dll.addAfterTail(3);dll.addBeforeHead(1);dll.display();dll.insert(4,4);dll.insert(5,5);dll.insert(6,6);dll.display();dll.delete(6);dll.delete(3);dll.delete(1);dll.display();System.out.println("双向链表的长度为:  " + dll.getSize());}}


热点排行