当前位置:网站首页>Leetcode92. reverse linked list II
Leetcode92. reverse linked list II
2022-07-05 03:07:00 【what's your name.】
【 secondary 】 Give you the head pointer of the single linked list head And two integers left and right , among left <= right . Please reverse from position left To the position right The linked list node of , return Inverted list .
Example 1:
Input :head = [1,2,3,4,5], left = 2, right = 4
Output :[1,4,3,2,5]
Example 2:
Input :head = [5], left = 1, right = 1
Output :[5]
Tips :
The number of nodes in the linked list is n
1 <= n <= 500
-500 <= Node.val <= 500
1 <= left <= right <= n
Solution 1 :
ListNode m1(ListNode head, int left, int right) {
ListNode virtual = new ListNode(0, head);
int i = 1;
ListNode end = head;
ListNode prev = virtual;
while (i < right) {
if (i <= left-1) {
prev = prev.next;
}
end = end.next;
i++;
}
ListNode last_t = prev;
ListNode new_t = prev.next;
ListNode next_h = end.next;
last_t.next = reverse(prev.next, end);
new_t.next = next_h;
return virtual.next;
}
Solution 2 :
ListNode m2(ListNode head, int left, int right) {
ListNode v = new ListNode(0, head);
ListNode curr = head;
ListNode next = head.next;
ListNode x = v;
ListNode s = head;
ListNode e = head;
ListNode y = head.next;
for (int i = 1; i < right; i++) {
if (i == left-1) {
x = curr;
s = next;
}
if (i == right-1) {
e = next;
y = next.next;
}
ListNode next_h = next.next;
if (i >= left && i <= right-1) {
next.next = curr;
}
curr = next;
next = next_h;
}
x.next = e;
s.next = y;
return v.next;
}
ListNode reverse(ListNode start, ListNode end) {
ListNode prev = null;
ListNode curr = start;
ListNode stop = end.next;
while (curr != stop) {
ListNode next = curr.next;
curr.next = prev;
prev = curr;
curr = next;
}
return end;
}
边栏推荐
- Kbp206-asemi rectifier bridge kbp206
- Yyds dry goods inventory intelligent fan based on CC2530 design
- Hot knowledge of multithreading (I): introduction to ThreadLocal and underlying principles
- Sqoop command
- 打破信息茧房-我主动获取信息的方法 -#3
- Scientific research: are women better than men?
- 問下,這個ADB mysql支持sqlserver嗎?
- El tree whether leaf node or not, the drop-down button is permanent
- Moco V2 literature research [self supervised learning]
- Utilisation simple de devtools
猜你喜欢

this+闭包+作用域 面试题

Design of KTV intelligent dimming system based on MCU

Apache Web page security optimization

The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety

Qrcode: generate QR code from text

Azkaban installation and deployment

【LeetCode】98. Verify the binary search tree (2 brushes of wrong questions)

C file in keil cannot be compiled

Kbp206-asemi rectifier bridge kbp206

为什么腾讯阿里等互联网大厂诞生的好产品越来越少?
随机推荐
Dart series: collection of best practices
Hmi-31- [motion mode] solve the problem of picture display of music module
Ubantu disk expansion (VMware)
Zabbix
Devtools的簡單使用
Class inheritance in C #
ASP. Net core 6 framework unveiling example demonstration [01]: initial programming experience
Devtools的简单使用
SQL injection exercise -- sqli Labs
The latest blind box mall, which has been repaired very popular these days, has complete open source operation source code
Apache Web page security optimization
Avoid material "minefields"! Play with super high conversion rate
Linux Installation redis
Anchor free series network yolox source code line by line explanation four (a total of ten, ensure line by line explanation, after reading, you can change the network at will, not just as a participan
Mongodb common commands
This + closure + scope interview question
Elk log analysis system
Design and implementation of campus epidemic prevention and control system based on SSM
ELK日志分析系统
Eight days of learning C language - while loop (embedded) (single chip microcomputer)