1. 题目:
删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。
示例:
1 | 给定一个链表: 1->2->3->4->5, 和 n = 2. |
说明:
给定的 n 保证是有效的。
进阶:
你能尝试使用一趟扫描实现吗?
2. 解题:
使用双指针right
,left
,进行一次遍历。
先让right
指针走n
步,然后让right
和left
同时出发,当right
到达结尾时,left
的下一个节点就是要删除节点。
需要注意,当删除的是头结点情况。
代码:
1 | /** |