File tree 1 file changed +33
-0
lines changed
In-place Reversal of a Linked List
1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change
1
+ # Definition for singly-linked list.
2
+ # class ListNode:
3
+ # def __init__(self, val=0, next=None):
4
+ # self.val = val
5
+ # self.next = next
6
+ class Solution :
7
+ #def reverseUtil(self, curr, prev):
8
+ # if curr.next is None:
9
+ # self.head = curr
10
+ # curr.next = prev
11
+ # return
12
+ # temp = curr.next
13
+ # curr.next = prev
14
+ # self.reverseUtil(temp, curr)
15
+ def reverseList (self , head : ListNode ) -> ListNode :
16
+ # if head is None or head.next is None:
17
+ # return head
18
+ # else:
19
+ # self.reverseUtil(head, None)
20
+ # return head
21
+
22
+ if head is None or head .next is None :
23
+ return head
24
+ else :
25
+ prev = None
26
+ curr = head
27
+ while curr is not None :
28
+ temp = curr .next
29
+ curr .next = prev
30
+ prev = curr
31
+ curr = temp
32
+ head = prev
33
+ return head
You can’t perform that action at this time.
0 commit comments