feat(528-swapping-nodes-in-a-ll): add py3 solution
This commit is contained in:
17
0528_swapping-nodes-in-a-linked-list/python3/using_dict.py
Normal file
17
0528_swapping-nodes-in-a-linked-list/python3/using_dict.py
Normal file
@@ -0,0 +1,17 @@
|
||||
# NOTE: Not the best approach, since we use O(N) space
|
||||
# Time: O(N)
|
||||
class Solution:
|
||||
def swapNodes(self, head: Optional[ListNode], k: int) -> Optional[ListNode]:
|
||||
# Figure out length of LL and cache nodes by the index
|
||||
length = 0
|
||||
cache = {}
|
||||
|
||||
ptr = head
|
||||
while ptr != None:
|
||||
cache[length] = ptr
|
||||
length += 1
|
||||
ptr = ptr.next
|
||||
|
||||
cache[k - 1].val, cache[length - k].val = cache[length - k].val, cache[k - 1].val
|
||||
|
||||
return head
|
||||
Reference in New Issue
Block a user