Problem
Given a linked list, remove the nth node from the end of list and return its head.
ExampleGiven linked list: 1->2->3->4->5->null, and n = 2.
After removing the second node from the end, the linked list becomes 1->2->3->5->null.
ChallengeCan you do it without getting the length of the linked list?
Note首先建立dummy結點指向head,復制鏈表。
然后建立快慢指針結點fast、slow,讓fast比slow先走n個結點,再讓fast和slow一起走,直到fast到達鏈表最后一個結點。由于fast比slow快n個結點,所以slow正好在鏈表倒數第n+1個結點。
最后讓slow指向slow.next.next,就刪除了原先的slow.next———倒數第n個結點。
返回dummy.next,結束。
class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { if (head == null || n <= 0) return head; ListNode dummy = new ListNode(0); dummy.next = head; ListNode slow = dummy, fast = dummy; while (n-- != 0) { fast = fast.next; } while (fast.next != null) { slow = slow.next; fast = fast.next; } slow.next = slow.next.next; return dummy.next; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/65667.html
摘要:首先建立按時間戳從大到小排列的,找到中的,出其中在中存在的,把每一個的推特鏈表放入,再從中取頭十條推特的放入結果數組。 Design Twitter Note 建立兩個HashMap,一個存user,一個存tweets。以及整型的時間戳timestamp。user的k-v pair是userId-follower_set,tweets的k-v pair是userId-tweets_li...
摘要:給定一個鏈表,刪除鏈表的倒數第個節點,并且返回鏈表的頭結點。示例給定一個鏈表和當刪除了倒數第二個節點后,鏈表變為說明給定的保證是有效的。值得注意的的是,指向應當刪除的節點并無法刪除它,應當指向該刪除節點的前一個節點。 給定一個鏈表,刪除鏈表的倒數第 n 個節點,并且返回鏈表的頭結點。 Given a linked list, remove the n-th node from the ...
摘要:給定一個鏈表,刪除鏈表的倒數第個節點,并且返回鏈表的頭結點。示例給定一個鏈表和當刪除了倒數第二個節點后,鏈表變為說明給定的保證是有效的。值得注意的的是,指向應當刪除的節點并無法刪除它,應當指向該刪除節點的前一個節點。 給定一個鏈表,刪除鏈表的倒數第 n 個節點,并且返回鏈表的頭結點。 Given a linked list, remove the n-th node from the ...
摘要:先用快指針向前走步,這樣快指針就領先慢指針步了,然后快慢指針一起走,當快指針到盡頭時,慢指針就是倒數第個。注意因為有可能刪除頭節點,我們需要一個代碼快指針先走步從開始慢指針和快指針一起走刪除當前的下一個節點 Remove Nth Node From End of List 最新更新的解法和思路:https://yanjia.me/zh/2018/11/... Given a link...
摘要:題目詳情題目要求輸入一個和一個數字。要求我們返回刪掉了倒數第個節點的鏈表。想法求倒數第個節點,我們將這個問題轉化一下。我們聲明兩個指針和,讓和指向的節點距離差保持為。解法使點和點的差距為同時移動和使得到達的末尾刪除倒數第個節點 題目詳情 Given a linked list, remove the nth node from the end of list and return it...
閱讀 1135·2023-04-26 00:12
閱讀 3275·2021-11-17 09:33
閱讀 1069·2021-09-04 16:45
閱讀 1196·2021-09-02 15:40
閱讀 2181·2019-08-30 15:56
閱讀 2969·2019-08-30 15:53
閱讀 3557·2019-08-30 11:23
閱讀 1939·2019-08-29 13:54