码迷,mamicode.com
首页 > 其他好文 > 详细

单链表逆转

时间:2018-04-26 16:58:28      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:bsp   输入   观察   执行   cpp   定义   class   函数   指针   

题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。

 

画个图吧,假设存在单链表
A->B->C->D->E

如果不想任何指针,该如何如何定义之类的,那么翻转过程可以搞成如下:

|
A->B->C->D->E
   |
B->A->C->D->E
      |
C->B->A->D->E
         |
D->C->B->A->E
            |
E->D->C->B->A

然后我们假设有三颗指针。分别为:

c:当前
n:下一个
l:上一个

 这时候我们重新定义上面的执行过程,那么有:

A->B->C->D->E

c  l  n
   |
B->A->C->D->E

c  l     n
      |
C->B->A->D->E

c  l        n
         |
D->C->B->A->E

            |
E->D->C->B->A

 仔细观察上图,就知道如何翻转了。

 

单链表逆转

标签:bsp   输入   观察   执行   cpp   定义   class   函数   指针   

原文地址:https://www.cnblogs.com/ccXgc/p/8952942.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!