-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSolution.java
More file actions
34 lines (31 loc) · 779 Bytes
/
Solution.java
File metadata and controls
34 lines (31 loc) · 779 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode reverseBetween(ListNode head, int left, int right) {
ListNode dummy = new ListNode();
dummy.next = head;
right -= left;
ListNode h = dummy;
while (left-- > 1)
h = h.next;
ListNode a = h.next;
ListNode b = a.next;
while (right-- > 0) {
ListNode tmp = b.next;
b.next = a;
a = b;
b = tmp;
}
h.next.next = b;
h.next = a;
return dummy.next;
}
}