Reverse Linked List
Reverse a singly linked list.
NoteCreate tail = null;
Head loop through the list: Store head.next, head points to tail, tail becomes head, head goes to stored head.next;
Return tail.
Solutionpublic class Solution { public ListNode reverseList(ListNode head) { ListNode tail = null; while (head != null) { ListNode temp = head.next; head.next = tail; tail = head; head = temp; } return tail; } }Reverse Linked List II
Reverse a linked list from position m to n. Do it in-place and in one-pass.
For example:
Given 1->2->3->4->5->NULL, m = 2 and n = 4,
return 1->4->3->2->5->NULL.
Note:
Given m, n satisfy the following condition:
1 ≤ m ≤ n ≤ length of list.
public class Solution { public ListNode reverseBetween(ListNode head, int m, int n) { if (head == null) return null; ListNode dummy = new ListNode(0); dummy.next = head; ListNode pre = dummy; int i = 0; while (i++ < m-1) {//注意這里,pre只要走到第m-1位 pre = pre.next; } ListNode cur = pre.next; ListNode next = pre.next.next; for (i = 0; i < n-m; i++) { cur.next = next.next; next.next = pre.next; pre.next = next; next = cur.next; } return dummy.next; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/65187.html
摘要:題目要求將鏈表中從第個節點開始翻轉至第個節點結束。要求在第一次遍歷中即完成該過程。將從第一個該節點開始依次插入最后一個節點后面直到遇到最后一個節點。最后我們還需要一個節點來標記整個鏈表的起始節點。 題目要求 Reverse a linked list from position m to n. Do it in-place and in one-pass. For example: ...
摘要:題目要求這道題目要求判斷一個鏈表中是否有環,如果有環,就返回環中的第一個節點。如果有環,就會重復遇到這個指向的節點。則該鏈表有環,且該節點就是環的起始節點。但是這個方法會毀壞原來鏈表的數據結構。 題目要求 Given a linked list, return the node where the cycle begins. If there is no cycle, return n...
摘要:在線網站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個題。這是項目地址歡迎一起交流學習。 這篇文章記錄我練習的 LeetCode 題目,語言 JavaScript。 在線網站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...
摘要:月下半旬攻略道題,目前已攻略題。目前簡單難度攻略已經到題,所以后面會調整自己,在刷算法與數據結構的同時,攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區別...
摘要:先跳過前個節點,然后初始化好這五個指針后,用中的方法反轉鏈表。完成了第個節點的反轉后,將子鏈反轉前的頭節點的設為子鏈反轉過程中的下一個節點,將子鏈反轉前頭節點前面一個節點的設為子鏈反轉過程中的當前節點。 Reverse Linked List I Reverse a singly linked list. click to show more hints. Hint: A linke...
閱讀 1759·2021-11-25 09:43
閱讀 1953·2019-08-30 13:56
閱讀 1214·2019-08-30 12:58
閱讀 3412·2019-08-29 13:52
閱讀 755·2019-08-26 12:17
閱讀 1452·2019-08-26 11:32
閱讀 934·2019-08-23 13:50
閱讀 1298·2019-08-23 11:53