Bước 4 Traverse Till Key được tìm thấy và điểm (PTR) để tiêu đề ..
Bước 5 Kiểm tra xem ptr-> data == key thì Goto Bước 6 khác Bước 7 ..
Bước 6 Tạo liên kết và thêm giá trị dữ liệu vào nút mới ..
Xem thảo luậnCải thiện bài viếtBước 4 Traverse Till Key được tìm thấy và điểm (PTR) để tiêu đề ..
Bước 5 Kiểm tra xem ptr-> data == key thì Goto Bước 6 khác Bước 7 ..
Bước 6 Tạo liên kết và thêm giá trị dữ liệu vào nút mới ..
Xem thảo luận
Cải thiện bài viết To create a Linked list using recursion follow these steps. Below steps insert a new node recursively at the end of linked list.
C++
Lưu bài viết
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Đọc
Bàn luận
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4Node
5Node
6
Chúng tôi đã thảo luận về các phương pháp khác nhau của việc chèn danh sách liên kết. Làm thế nào để tạo ra một danh sách được liên kết?
Chèn đệ quy ở cuối: & nbsp; để tạo một danh sách được liên kết bằng cách sử dụng đệ quy làm theo các bước này. Dưới đây các bước chèn một nút mới đệ quy ở cuối danh sách được liên kết. & Nbsp; & nbsp;
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
0Node
1 Node
2
Bàn luận
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4Node
5Node
7
Chúng tôi đã thảo luận về các phương pháp khác nhau của việc chèn danh sách liên kết. Làm thế nào để tạo ra một danh sách được liên kết?
LinkedList
0
Python3
Chèn đệ quy ở cuối: & nbsp; để tạo một danh sách được liên kết bằng cách sử dụng đệ quy làm theo các bước này. Dưới đây các bước chèn một nút mới đệ quy ở cuối danh sách được liên kết. & Nbsp; & nbsp;
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4index == 0
6Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9C#
LinkedList
0
self.next.insert(value, index - 1)
1
Java
LinkedList
1 LinkedList
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4Node
5Node
3
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0LinkedList
0
insert2 insert3
Node
8
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 insert
6insert
7insert
7 insert
9index == 0
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
5Node
7
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0Chúng tôi đã thảo luận về các phương pháp khác nhau của việc chèn danh sách liên kết. Làm thế nào để tạo ra một danh sách được liên kết?
LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
26Chèn đệ quy ở cuối: & nbsp; để tạo một danh sách được liên kết bằng cách sử dụng đệ quy làm theo các bước này. Dưới đây các bước chèn một nút mới đệ quy ở cuối danh sách được liên kết. & Nbsp; & nbsp;
The idea is simple, we print current node and recur for remaining list.
Implementation:C++
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Đọc
Bàn luận
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
37class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
41LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
56class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
60LinkedList
0
Python3
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5Node
5Node
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
80index == 0
9Node
0C#
LinkedList
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
45class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
96class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
60LinkedList
0
& nbsp; chương trình hoàn chỉnh: & nbsp; bên dưới là chương trình hoàn chỉnh để chứng minh hoạt động của chèn và di chuyển một danh sách được liên kết. & nbsp;
Complete Program: Below is complete program to demonstrate working of insert and traverse a linked list.
C++
Node
02
Node
03 Node
04 Node
05
Node
06 Node
07
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 Node
10class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
12Node
13
Node
14
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
19Node
20 Node
21class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
23class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
25class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
28LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4Node
5Node
6
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
28class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
33Node
1class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
37class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
41LinkedList
0
Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
68class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
70class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
72class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
74class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
76class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
78class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
80LinkedList
0
Node
5Node
6
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
28class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 Node
10class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
93Node
13
Node
14
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
19Node
20 Node
21class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
05class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
07LinkedList
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
28LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9Node
0Node
1 Node
2
Node
5Node
7
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9LinkedList
0
LinkedList
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
45class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
56class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
60LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
28class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
60LinkedList
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
64LinkedList
65class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
64LinkedList
69class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
64LinkedList
73class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 Node
65class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
64LinkedList
81class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
80LinkedList
0
LinkedList
0
Python3
Java
Node
82 Node
83
LinkedList
1 Node
82 Node
LinkedList
1 Node
96
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
01Node
20 LinkedList
03LinkedList
1 LinkedList
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5Node
5Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4LinkedList
54 LinkedList
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 LinkedList
57
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
64LinkedList
777class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58LinkedList
87 LinkedList
88
Node
82 LinkedList
90
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7insert
2 LinkedList
93LinkedList
94LinkedList
95class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4index == 0
6Node
5LinkedList
94LinkedList
98insert
7 Node
00
Node
5LinkedList
94Node
03index == 0
9 insert
7 insert
9
insert
2 Node
08
Node
82 LinkedList
90
Node
5Node
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7insert
2 LinkedList
93LinkedList
94LinkedList
95class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
80index == 0
9Node
0Node
5LinkedList
94LinkedList
98insert
7 Node
00
Node
5LinkedList
94Node
03index == 0
9 insert
7 insert
9
insert
2 Node
08
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
10insert
7 Node
12class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
14insert
7 Node
00class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
18index == 0
9 insert
7 insert
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
24class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7insert
12C#
insert
2 insert
3
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
28class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 Node
65Java
Node
13
Node
14
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
19Node
20 Node
21class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
05class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
07LinkedList
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
28LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
4 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
5class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
4Node
0Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1 Node
9LinkedList
0
LinkedList
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
45class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
1class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
96class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
60LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
27 class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
28class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
60LinkedList
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
70class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
72class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
74class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
76class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
78class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
80LinkedList
0
LinkedList
0
JavaScript
Node
8
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7index == 0
14class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
5index == 0
18
index == 0
19index == 0
20index == 0
21LinkedList
9
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35index == 0
19index == 0
20index == 0
26
Node
5LinkedList
0
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
9 index == 0
3class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
5index == 0
37Node
20 index == 0
39
Node
5Node
1 Node
28
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
9 index == 0
47class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
5
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0index == 0
55Node
1 Node
2
Node
5Node
4
index == 0
55Node
7
Node
5Node
1 Node
9
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
9 insert
12class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
6Node
5
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
8 LinkedList
8LinkedList
9Node
0index == 0
55Node
1
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35Node
5index == 0
81
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
38class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
58Node
5
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
60class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7LinkedList
0class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7index == 0
89LinkedList
9class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
35class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
70class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
72class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
74index == 0
55Node
1 Node
2
class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
78class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
7Node
80class Node:
def __init__(self, data, node=None):
self.data = data
self.next = node
class LinkedList:
def __init__(self, node=None):
self.head = node
def __repr__(self):
values = []
curr = self.head
while curr:
values.append(curr.data)
curr = curr.next
return ', '.join(map(str, values))
def insert(self, value, index=0, node=None):
node = node or self.head # if node==None, then assign self.head
if node.next:
if index == 0:
node.next, node.data = Node(node.data, node.next), value
else:
self.insert(value, index=index-1, node=node.next)
else: # if terminal node, ignore index
node.next = Node(value)
ll = LinkedList(Node(1, Node(3, Node(4))))
print(ll) # 1, 3, 4
ll.insert(2, 1)
print(ll) # 1, 2, 3, 4
ll.insert(5, 4)
print(ll) # 1, 2, 3, 4, 5
26Node
5Node
1 Node
9AMIT KUMAR. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to . See your article appearing on the
GeeksforGeeks main page and help other Geeks.
Chèn các yếu tố vào một danh sách được liên kết.Bạn có thể thêm các phần tử vào phần đầu, giữa hoặc cuối của danh sách được liên kết.You can add elements to either the beginning, middle or end of the linked list.