Reverse Linked List II
2014-07-30 21:38
148 查看
Reverse a linked list from position m to n. Do it in-place and in one-pass.
For example:
Given
4,
return
Note:
Given m, n satisfy the following condition:
1 ≤ m ≤ n ≤ length of list.
先反转m到n之间的list再头尾衔接一下
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.
先反转m到n之间的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) { ListNode dummy(-1); dummy.next=head; ListNode* pm=&dummy; for(int i=0;i<m-1;i++) pm=pm->next; ListNode* start=pm; pm=pm->next; ListNode* begin=pm; ListNode *next,*cur=pm->next; for(int i=n-m;i>0;i--) { next=cur->next; cur->next=pm; pm=cur; cur=next; } start->next=pm; begin->next=cur; return dummy.next; } };
相关文章推荐
- [leetcode]Reverse Linked List II
- LeetCode(92) Reverse Linked List II
- leetcode 092 —— Reverse Linked List II
- Reverse Linked List II
- 92. Reverse Linked List II
- Reverse Linked List II
- leetcode:Reverse Linked List II
- leetcode oj java Reverse Linked List II
- Reverse Linked List II
- LeetCode - M - Reverse Linked List II
- LeetCode 92. Reverse Linked List II
- Reverse Linked List II
- [LeetCode]206. Reverse Linked List&92. Reverse Linked List II
- 92. Reverse Linked List II
- leetcode Reverse Linked List II
- Reverse Linked List II
- [leetcode] Reverse Linked List II
- LeetCode 92. Reverse Linked List II
- LeetCode-Reverse Linked List II(反转链表)
- [LeetCode] Reverse Linked List II(!!!)