-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnode.py
81 lines (78 loc) · 1.96 KB
/
node.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#Create Node
class node:
def __init__(self, data = None):
self.data = data
self.next = None
#Create Linked List
class Linked:
def __init__(self):
self.head = None
#insert node in last element
def insert(self, d):
temp = self.head
new = node(d)
if self.head == None:
self.head = new
else:
temp = self.head
while temp.next != None:
temp = temp.next
temp.next = new
# Show all element of linked list
def show(self):
temp = self.head
while temp!= None:
print(temp.data,' ', end='')
temp = temp.next
print(' ')
#Delete all element from beginning
def delete(self):
self.head = self.head.next
#Delete input value node
def de(self, v):
temp = self.head
while temp.next.data != v :
temp = temp.next
temp.next = temp.next.next
#Insert Node at Head Node
def ins(self, da):
new = node(da)
new.next = self.head
self.head = new
def d(self):
temp = self.head
while temp.next.next!=None:
temp = temp.next
temp.next = None
print('Linked List Created')
h = Linked()
print('Insert New Node 10 at end of Linked List')
h.insert(10)
h.show()
print('Insert New Node 20 at end of Linked List')
h.insert(20)
h.show()
print('Insert New Node 30 at end of Linked List')
h.insert(30)
h.show()
print('Delete Head Node')
h.delete()
h.show()
print('Insert New Node 50 at end of Linked List')
h.insert(50)
h.show()
print('Insert New Node 40 at end of Linked List')
h.insert(40)
h.show()
print('Delete Node which value is 50')
h.de(50)
h.show()
print('Insert New Node 5 at beginning of Linked List')
h.ins(5)
h.show()
print('Delete Node From End of Linked List')
h.d()
h.show()
print('Delete Node From End of Linked List')
h.d()
h.show()