File tree Expand file tree Collapse file tree 7 files changed +137
-0
lines changed Expand file tree Collapse file tree 7 files changed +137
-0
lines changed Original file line number Diff line number Diff line change
1
+ public class ListNode {
2
+ public int val ;
3
+ public ListNode next ;
4
+ public ListNode ( int val = 0 , ListNode next = null ) {
5
+ this . val = val ;
6
+ this . next = next ;
7
+ }
8
+ }
9
+
10
+ public class Solution {
11
+ public ListNode ReverseList ( ListNode head ) {
12
+ ListNode prev = null ;
13
+ ListNode curr = head ;
14
+
15
+ while ( curr != null ) {
16
+ ListNode next = curr . next ;
17
+ curr . next = prev ;
18
+ prev = curr ;
19
+ curr = next ;
20
+ }
21
+ return prev ;
22
+ }
23
+ }
Original file line number Diff line number Diff line change
1
+ struct ListNode {
2
+ int val;
3
+ ListNode* next;
4
+ ListNode (int x) : val(x), next(nullptr ) {}
5
+ };
6
+
7
+ ListNode* reverseList (ListNode* head) {
8
+ ListNode* prev = nullptr ;
9
+ ListNode* curr = head;
10
+
11
+ while (curr != nullptr ) {
12
+ ListNode* next = curr->next ;
13
+ curr->next = prev;
14
+ prev = curr;
15
+ curr = next;
16
+ }
17
+ return prev;
18
+ }
Original file line number Diff line number Diff line change
1
+ package main
2
+
3
+ type ListNode struct {
4
+ Val int
5
+ Next * ListNode
6
+ }
7
+
8
+ func reverseList (head * ListNode ) * ListNode {
9
+ var prev * ListNode = nil
10
+ curr := head
11
+
12
+ for curr != nil {
13
+ next := curr .Next
14
+ curr .Next = prev
15
+ prev = curr
16
+ curr = next
17
+ }
18
+ return prev
19
+ }
Original file line number Diff line number Diff line change
1
+ package patterns .java ;
2
+
3
+ class ListNode {
4
+ int val ;
5
+ ListNode next ;
6
+ }
7
+
8
+ public class ReverseLinkedList {
9
+ public ListNode reverseList (ListNode head ) {
10
+ ListNode prev = null ; // Previous node, initially null
11
+ ListNode curr = head ; // Current node starts from the head
12
+ while (curr != null ) {
13
+ ListNode next = curr .next ; // Store next node
14
+ curr .next = prev ; // Reverse the current node's pointer
15
+ prev = curr ; // Move prev to current
16
+ curr = next ; // Move curr to next
17
+ }
18
+ return prev ; // New head of the reversed list
19
+ }
20
+ }
Original file line number Diff line number Diff line change
1
+ class ListNode {
2
+ constructor ( val = 0 , next = null ) {
3
+ this . val = val ;
4
+ this . next = next ;
5
+ }
6
+ }
7
+
8
+ function reverseList ( head ) {
9
+ let prev = null ;
10
+ let curr = head ;
11
+
12
+ while ( curr !== null ) {
13
+ let next = curr . next ;
14
+ curr . next = prev ;
15
+ prev = curr ;
16
+ curr = next ;
17
+ }
18
+ return prev ;
19
+ }
Original file line number Diff line number Diff line change
1
+ class ListNode :
2
+ def __init__ (self , val = 0 , next = None ):
3
+ self .val = val
4
+ self .next = next
5
+
6
+ def reverse_list (head ):
7
+ prev = None
8
+ curr = head
9
+
10
+ while curr :
11
+ next_node = curr .next
12
+ curr .next = prev
13
+ prev = curr
14
+ curr = next_node
15
+
16
+ return prev
Original file line number Diff line number Diff line change
1
+ class ListNode {
2
+ val : number ;
3
+ next : ListNode | null ;
4
+
5
+ constructor ( val : number = 0 , next : ListNode | null = null ) {
6
+ this . val = val ;
7
+ this . next = next ;
8
+ }
9
+ }
10
+
11
+ function reverseList ( head : ListNode | null ) : ListNode | null {
12
+ let prev : ListNode | null = null ;
13
+ let curr : ListNode | null = head ;
14
+
15
+ while ( curr !== null ) {
16
+ let next : ListNode | null = curr . next ;
17
+ curr . next = prev ;
18
+ prev = curr ;
19
+ curr = next ;
20
+ }
21
+ return prev ;
22
+ }
You can’t perform that action at this time.
0 commit comments