力扣206-反转链表[递归不熟]
难度:【简单】
1. 按自己的思路写一遍,运行报错,看了半天是返回的头节点写错了,应该返回前一个节点而不是最后一个节点(初始链表的最后一个节点是null),改了后就通过了。
2. 官方还提供了递归解法,一开始没太理解,多看一会就懂了。解法如下截图。我觉得“假设n(1)→…→n(k−1)已反转完成”更容易理解一些,从k=2开始,一个元素一个元素的拓展,即在已经反转完成的链表上增加一个新节点。实现代码时发现,当递归中的操作步骤多于1步时,我很容易写错,并且理解困难,就像大脑缓存不够用了一样,哎。可能还是对递归的栈结构不熟悉吧。