当前位置:网站首页>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;
}
边栏推荐
- The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
- The perfect car for successful people: BMW X7! Superior performance, excellent comfort and safety
- When the low alcohol race track enters the reshuffle period, how can the new brand break the three major problems?
- 1.五层网络模型
- Anchor free series network yolox source code line by line explanation Part 2 (a total of 10, ensure to explain line by line, after reading, you can change the network at will, not just as a participan
- Utilisation simple de devtools
- FBO and RBO disappeared in webgpu
- Azkaban概述
- LeetCode146. LRU cache
- Bumblebee: build, deliver, and run ebpf programs smoothly like silk
猜你喜欢
IPv6 experiment
Why are there fewer and fewer good products produced by big Internet companies such as Tencent and Alibaba?
Flume configuration 4 - customize mysqlsource
Azkaban overview
Azkaban概述
LeetCode146. LRU cache
Privatization lightweight continuous integration deployment scheme -- 01 environment configuration (Part 1)
Character painting, I use characters to draw a Bing Dwen Dwen
Devtools的简单使用
Class inheritance in C #
随机推荐
Scientific research: are women better than men?
Six stone programming: advantages of automated testing
SQL performance optimization skills
Talk about the SQL server version of DTM sub transaction barrier function
IPv6 experiment
Three line by line explanations of the source code of anchor free series network yolox (a total of ten articles, which are guaranteed to be explained line by line. After reading it, you can change the
ICSI213/IECE213 Data Structures
Yuan universe also "real estate"? Multiple second-hand trading websites block metauniverse keywords
el-select,el-option下拉选择框
Share the newly released web application development framework based on blazor Technology
Apache build web host
为什么腾讯阿里等互联网大厂诞生的好产品越来越少?
LeetCode146. LRU cache
Jd.com 2: how to prevent oversold in the deduction process of commodity inventory?
腾讯云,实现图片上传
Tiny series rendering tutorial
Logstash、Fluentd、Fluent Bit、Vector? How to choose the appropriate open source log collector
Sqoop命令
this+闭包+作用域 面试题
Pytest (4) - test case execution sequence