《leetCode》:Remove Nth Node From End of List
来源:互联网 发布:ubuntu快捷键 编辑:程序博客网 时间:2024/06/04 01:15
题目:
Given a linked list, remove the nth node from the end of list and return its head.
For example,
Given linked list: 1->2->3->4->5, and n = 2. After removing the second node from the end, the linked list becomes 1->2->3->5.
Note:
Given n will always be valid.
Try to do this in one pass.
思路:
可以使用指针来完成。将一个指针快速移动——> n + 1位置向前,在两个指针之间保持n个间隔,然后以相同的速度移动。最后,当快速指针到达末端时,慢指针将会是n + 1的位置——正好是它能够跳过下一个节点的正确位置。
因为问题是,n是有效的,没有太多的检查必须到位。否则,这是必要的。
public ListNode removeNthFromEnd(ListNode head, int n) { ListNode start = new ListNode(0); ListNode slow = start, fast = start; slow.next = head; //Move fast in front so that the gap between slow and fast becomes n for(int i=1; i<=n+1; i++) { fast = fast.next; } //Move fast to the end, maintaining the gap while(fast != null) { slow = slow.next; fast = fast.next; } //Skip the desired node slow.next = slow.next.next; return start.next;}
阅读全文
0 0
- LeetCode[Linked List]: Remove Nth Node From End of List
- 19. Remove Nth Node From End of List leetcode list
- [Leetcode]LeetCode 19:Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- [Leetcode] Remove Nth Node From End of List
- LeetCode: Remove Nth Node From End of List
- leetcode 40: Remove Nth Node From End of List
- [LeetCode] Remove Nth Node From End of List
- Leetcode 19 Remove Nth Node From End of List
- [Leetcode] Remove Nth Node From End of List
- [LeetCode]Remove Nth Node From End of List
- LeetCode-Remove Nth Node From End of List
- [LeetCode] Remove Nth Node From End of List
- LeetCode 19: Remove Nth Node From End of List
- LeetCode - Remove Nth Node From End of List
- LeetCode | Remove Nth Node From End of List
- leetcode之Remove Nth Node From End of List
- 树状数组的两道基本题
- 2017.8.7 序列计数 思考记录
- 成员变量和局部变量的区别,静态变量和成员变量的区别
- 函数重载
- JVM--解析Java内存区域及数据的内存分配与线程安全之间的一些联系
- 《leetCode》:Remove Nth Node From End of List
- 2017年8月7日提高组T1 根
- C语言中的指针
- 1 0 背包问题 典型的 例题 : Bone Collector
- Python glob使用
- 存储类别
- 集合
- Fibonacci 数列O(logn)解法
- 进程管理