[Leetcode]Reverse Linked List II
2013-07-04 20:13
459 查看
/** * 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) { // Start typing your C/C++ solution below // DO NOT write int main() function if(head == NULL || head->next == NULL) return head; ListNode dummy(0); dummy.next = head; head = &dummy; ListNode *p1 = head, *p2 = head->next; ListNode *pre; for(int i = 0; i < m; ++i) { pre = p1; p1 = p1->next; p2 = p2->next; } for(int i = m; i < n; ++i) { ListNode *next = p2->next; p2->next = p1; p1 = p2; p2 = next; } pre->next->next = p2; pre->next = p1; return dummy.next; } };
相关文章推荐
- [LeetCode] Reverse Linked List II
- [leetcode] Reverse Linked List II 链表反转
- Leetcode:Reverse Linked List II 单链表区间范围内逆置
- [Leetcode][python]Reverse Linked List/Reverse Linked List II
- [LeetCode] 92. Reverse Linked List II
- Leetcode: Reverse Linked List II
- LeetCode_Reverse Linked List II
- LeetCode 92. Reverse Linked List II
- leetcode 092 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
- leetcode——Reverse Linked List II 选择链表中部分节点逆序(AC)
- [C语言][LeetCode][92]Reverse Linked List II
- 【LeetCode】Reverse Linked List II
- [LeetCode] Reverse Linked List II
- LeetCode---(92) Reverse Linked List II
- 【LeetCode-面试算法经典-Java实现】【092-Reverse Linked List II(反转单链表II)】
- LeetCode 92. Reverse Linked List II 解题报告