双链表算法之遍历
Posted ywx123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了双链表算法之遍历相关的知识,希望对你有一定的参考价值。
(七)双链表算法之遍历
双链表正向遍历
??正向遍历和单链表相同,详情见单链表。
1/*
2 *pH : 头节点
3 *return 返回尾部节点地址
4 */
5struct node * list_for_each(struct *pH)
6{
7 struct node *p = pH;
8 if(NULL == p)
9 return NULL;
10 while(NULL != p ->pNext)
11 {
12 p = p ->pNext;
13 printf("dtat = %d.
",p->data);
14 }
15 return p;
16}
双链表逆向遍历
1void list_for_reverse(struct node *pTail)
2{
3 struct node *p = pTail; //尾部节点
4 while(NULL != p -> pPrev)
5 {
6 printf("data = %d.
", p->data); //先打印,逆向遍历,第一个节点就是有效节点
7 p = p ->pPrev;
8 }
9
10}
以上是关于双链表算法之遍历的主要内容,如果未能解决你的问题,请参考以下文章