92. Reverse Linked List II
2016-10-04 17:29
330 查看
题目:
Reverse a linked list from position m to n. Do it in-place and in one-pass.
For example:
Given
return
Note:
Given m, n satisfy the following condition:
1 ≤ m ≤ n ≤ length of list.
直接上代码了,在讨论区学习的,自己没有思路。多看多学习吧。
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.
直接上代码了,在讨论区学习的,自己没有思路。多看多学习吧。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* reverseBetween(ListNode* head, int m, int n) { //模仿大神方法,自己没有想出来 if (m == n) return head; ListNode* dummy = new ListNode(0); dummy->next = head; ListNode* pre = dummy; for (int i = 0; i < m - 1; i++) pre = pre->next; ListNode* start = pre->next; ListNode* next = start->next; for (int i = 0; i < n - m; i++) { start->next = next->next; next->next = pre->next; pre->next = next; next = start->next; } return dummy->next; } };
相关文章推荐
- leetcode92~Reverse Linked List II
- 92. Reverse Linked List II
- LeetCode(92): Reverse Linked List II (C++)
- 92. Reverse Linked List II
- 92. Reverse Linked List II。
- LeetCode(92) Reverse Linked List II
- 92. Reverse Linked List II
- Reverse Linked List II Leetcode92
- 92-reverse linked list II
- [LeetCode-92] Reverse Linked List II(反转指定区间链表)
- [C语言][LeetCode][92]Reverse Linked List II
- leetcode——92——Reverse Linked List II
- 92. Reverse Linked List II
- Leetcode# 92 Reverse Linked List II
- Leetcode 92 Reverse Linked List II
- LeetCode-92-Reverse Linked List II 链表反转 各种边界条件
- LeetCode 92 Reverse Linked List II
- leetcode 92: Reverse Linked List II
- [leetcode-92]Reverse Linked List II(c++)
- 92. Reverse Linked List II