leetcode 92. Reverse Linked List II
来源:互联网 发布:安徽之达大数据研究院 编辑:程序博客网 时间:2024/06/05 08:02
/** * 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* help = new ListNode(0); //添加一个头结点 help->next = head; ListNode* prior = help; int i = 1; for (; i < m && prior; ++i) prior= prior->next; reverse(prior, n - i + 1); return help->next; }private: void reverse(ListNode* prior, int num){ ListNode* tail = prior->next;//第一个结点会变成最后一个结点 ListNode* ptr = prior->next; for (int i = 0; i < num && ptr; ++i){ ListNode* tmp = ptr->next; ptr->next = prior->next; prior->next= ptr; ptr = tmp; if ( i == num - 1) // 关键的一步 tail->next = ptr; } }};
0 0
- [LeetCode]206. Reverse Linked List&92. Reverse Linked List II
- LeetCode 206. Reverse Linked List && 92. Reverse Linked List II
- 92. Reverse Linked List II leetcode list
- [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
- 92. Reverse Linked List II LeetCode
- 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
- [Leetcode] 92. Reverse Linked List II
- 【LeetCode】92. Reverse Linked List II
- 我的servlet学习过程(二):tomcat服务器部分
- 指针常量和常量指针的区别
- 使用ptrace向已运行进程中注入.so并执行相关函数
- 高斯消元1(解方程)
- 112. Path Sum | LeetCode
- leetcode 92. Reverse Linked List II
- ACL
- C++四种强制类型转换关键字
- a标签调用js的几种方法
- UValive 7269 (模拟)
- POJ - 3045 Cow Acrobats (贪心)
- 耶~~
- erlang 排序算法
- 2016暑期集训1A 组合数