循环链表和双向链表的例子谁能给个??

来源:百度知道 编辑:UC知道 时间:2024/05/12 05:15:19
c语言的哈
现在都没人认真答题了,都是复制粘贴。

[回答]
关于链表的操作,你可以去看看我的博克
我也是参考了网上的一些知识
但是对于你的学习肯定很有好处
我也从中受益很多
链表刚刚学习的时候感觉很难
但是自己归纳整理以后就觉得简单很多了
应用自如的时候感觉很舒服^^

http://hi.baidu.com/xy_zm/blog/item/04cfcb08e2dcec34e82488af.html

悉雨辰寂

一、循环链表

循环链表是与单链表一样,是一种链式的存储结构,所不同的是,循环链表的最后一个结点的指针是指向该循环链表的第一个结点或者表头结点,从而构成一个环形的链。

循环链表的运算与单链表的运算基本一致。所不同的有以下几点:

1、在建立一个循环链表时,必须使其最后一个结点的指针指向表头结点,而不是象单链表那样置为NULL。此种情况还使用于在最后一个结点后插入一个新的结点。

2、在判断是否到表尾时,是判断该结点链域的值是否是表头结点,当链域值等于表头指针时,说明已到表尾。而非象单链表那样判断链域值是否为NULL。

二、双向链表

双向链表其实是单链表的改进。

当我们对单链表进行操作时,有时你要对某个结点的直接前驱进行操作时,又必须从表头开始查找。这是由单链表结点的结构所限制的。因为单链表每个结点只有一个存储直接后继结点地址的链域,那么能不能定义一个既有存储直接后继结点地址的链域,又有存储直接前驱结点地址的链域的这样一个双链域结点结构呢?这就是双向链表。

在双向链表中,结点除含有数据域外,还有两个链域,一个存储直接后继结点地址,一般称之为右链域;一个存储直接前驱结点地址,一般称之为左链域。在c语言中双向链表结点类型可以定义为:
<