反转链表

序言

单链表中,我们知道一个节点指向下一个节点,如此循环下去。直到链表结束。也就是说我们只知道某个节点的下一个节点,上个节点却无法获知。那么有什么好的办法在单链表中实现回退,找到上个节点的办法

把每个节点迭代进入栈里面 iterator.png 利用栈的特性FILO,正好能满足条件。想知道某个节点的上一个节点,只需要在栈中弹出来即可。

实现模式

Java的stack存储

这个比较节点,迭代下就可以了

递归形成调用栈

看图理好理解! 20170517153542944.jpg 递归到最后面去 20170517153555749.jpg 往上面返 20170517153616757.jpg 在往上面返 这样也可以实现栈的结构,只不过用的是内存栈

题目

反转链表 反转一个单链表。

输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL

实现

按照上面的实现模式,很好实现,我是使用递归解决的 代码实现

坚持原创技术分享,您的支持将鼓励我继续创作!
  • 本文作者: 带带蓝蜗牛
  • 本文链接: 161.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!