来自左神书中的一道题,在左神核心代码的基础上,添加了链表的构建和输出以及删除节点的打印,将这道题完善成了一个小Demo,和各位共勉。
题目:
* 给定一个单链表,删除它的倒数第k个节点。
* 例如给定链表: 1→2→3→4→5,删除它的倒数第二个节点后变为 1→2→3→5。
方法:
* 第一种方法,就是先对单链表进行进行一次遍历,求出其长度n。然后再进行第二次遍历,设一个指针,向后移动n−k个位置,然后删除这个节点。
* 第二种方法就是使用双指针,两个指针保持k间距,第一个指针走到底,第二个指针所在位置就是我们的倒数第k个节点,只需要对链表进行一遍访问即可。