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