File tree 1 file changed +69
-0
lines changed
1 file changed +69
-0
lines changed Original file line number Diff line number Diff line change
1
+ # -*- coding: utf-8 -*-
2
+ # @Time : 2019/3/4 15:26
3
+ # @Author : xulzee
4
+
5
+ # @File : 237. Delete Node in a Linked List.py
6
+ # @Software: PyCharm
7
+
8
+ # Definition for singly-linked list.
9
+ class ListNode :
10
+ def __init__ (self , x ):
11
+ self .val = x
12
+ self .next = None
13
+
14
+
15
+ class Solution :
16
+ def deleteNode (self , node ):
17
+ """
18
+ :type node: ListNode
19
+ :rtype: void Do not return anything, modify node in-place instead.
20
+ """
21
+ node .val = node .next .val
22
+ node .next = node .next .next
23
+
24
+
25
+ def stringToListNode (nums ):
26
+ # Generate list from the input
27
+ numbers = nums
28
+
29
+ # Now convert that list into linked list
30
+ dummyRoot = ListNode (0 )
31
+ ptr = dummyRoot
32
+ for number in numbers :
33
+ ptr .next = ListNode (number )
34
+ ptr = ptr .next
35
+
36
+ ptr = dummyRoot .next
37
+ return ptr
38
+
39
+
40
+ def listNodeToString (node ):
41
+ if not node :
42
+ return "[]"
43
+
44
+ result = ""
45
+ while node :
46
+ result += str (node .val ) + ", "
47
+ node = node .next
48
+ return "[" + result [:- 2 ] + "]"
49
+
50
+
51
+ def main ():
52
+ try :
53
+ line = [1 , 2 , 3 ]
54
+ node = stringToListNode (line )
55
+ n = 1
56
+
57
+ ret = Solution ().deleteNode (node , n )
58
+
59
+ out = listNodeToString (node )
60
+ if ret is not None :
61
+ print ("Do not return anything, modify node in-place instead." )
62
+ else :
63
+ print (out )
64
+ except StopIteration :
65
+ pass
66
+
67
+
68
+ if __name__ == '__main__' :
69
+ main ()
You can’t perform that action at this time.
0 commit comments