Bạn có cần phải có các lớp riêng cho Node và LinkedList không? Nếu không, bạn có thể đơn giản hóa mã như sau:
class Node: def __init__(self, data, node=None): self.data = data self.next = node def __repr__(self): return f"{self.data}, {self.next}" if self.next else str(self.data) def insert(self, value, index=0): if self.next: if index == 0: self.next, self.data = Node(self.data, self.next), value else: self.next.insert(value, index - 1) else: # if terminal node, ignore index self.next = Node(value) ll = Node(1, Node(3, Node(4))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5Về cơ bản, mỗi Node thể hiện một danh sách được liên kết bắt đầu từ nút đó, mà (tôi tin) phù hợp với khái niệm đệ quy.
Ở đây, insert chỉ thực hiện công việc thực sự khi index == 0, ý tưởng tương tự như trong giải pháp lặp của bạn. Mặt khác (nếu index > 0), nó sẽ ném công việc vào nút tiếp theo với một chỉ mục ít hơn (self.next.insert(value, index - 1)).
Nếu bạn phải duy trì cấu trúc ____ 2 -________ 3, bạn có thể làm như sau:
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, 5Lưu ý rằng insert có thêm một biến trạng thái 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 2. Mặc dù về mặt kỹ thuật đệ quy, tôi có đặt phòng về vẻ đẹp của nó.
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 ..
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ậ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 7Node4
Node5Node6
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 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 6
Node0Node1 Node2
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 7Node4
Node5Node7
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?
LinkedList0
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 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 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 7Node4index == 06
Node0Node1 Node2
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 7Node1 Node9
C#
LinkedList0
self.next.insert(value, index - 1)1
Java
LinkedList1 LinkedList2class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 7Node4
Node5Node3
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 LinkedList8LinkedList9Node0
LinkedList0
insert2 insert3
Node8
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 insert6insert7insert7 insert9index == 00
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
Node0Node1 Node2
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 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 7Node1 Node9
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 7LinkedList0
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 7Node4
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 6
Node5Node7
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 7LinkedList0
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?
LinkedList0
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 26
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;
The idea is simple, we print current node and recur for remaining list.
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 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 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 35
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 41
LinkedList0
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 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 6
Node0Node1 Node2
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 7Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 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 58
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 60
LinkedList0
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 7Node1 Node9
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
Node5Node1
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 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 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 == 09Node0
C#
LinkedList1 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 45
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
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 LinkedList8LinkedList9Node0
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 7Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 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 58
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 60
LinkedList0
& 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++
Node02
Node03 Node04 Node05
Node06 Node07
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 Node10
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 7Node12
Node13
Node14class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 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 7Node19Node20 Node21
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 7Node23
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 7Node25
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 7Node1 Node28
LinkedList0
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 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 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 9
Node0Node1 Node2
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 7Node4
Node5Node6
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 7Node1 Node9
LinkedList0
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 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 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 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 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 33Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 35
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 41
LinkedList0
Node0Node1 Node2
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
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 7Node68
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 7Node70
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 7Node72
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 7Node74
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 7Node76
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 7Node78
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 7Node80
LinkedList0
Node5Node6
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 7Node1 Node9
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
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 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 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 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 Node10
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 7Node93
Node13
Node14class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 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 7Node19Node20 Node21
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 7LinkedList05
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 7LinkedList07LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 7Node1 Node28
LinkedList0
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 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 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 LinkedList8LinkedList9Node0
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 9
Node0Node1 Node2
Node5Node7
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 7Node1 Node9
LinkedList0
LinkedList1 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 45
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
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 LinkedList8LinkedList9Node0
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 7Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 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 58
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 60
LinkedList0
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 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 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 7LinkedList60LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 7LinkedList64LinkedList65class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 58
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 7LinkedList64LinkedList69class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 58
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 7LinkedList64LinkedList73class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 58
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 Node65
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 7LinkedList64LinkedList81class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 58
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 7Node80
LinkedList0
LinkedList0
Python3
Java
Node82 Node83
LinkedList1 Node82 Node
LinkedList1 Node96class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 7LinkedList01Node20 LinkedList03
LinkedList1 LinkedList2class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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
Node5Node1 Node2
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 7Node4
LinkedList54 LinkedList1 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 LinkedList57
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 7LinkedList64LinkedList777class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 58
LinkedList87 LinkedList88
Node82 LinkedList90
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 7insert2 LinkedList93LinkedList94LinkedList95
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 7Node4index == 06
Node5LinkedList94LinkedList98insert7 Node00
Node5LinkedList94Node03index == 09 insert7 insert9
insert2 Node08
Node82 LinkedList90
Node5Node1
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 7insert2 LinkedList93LinkedList94LinkedList95
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 80index == 09Node0
Node5LinkedList94LinkedList98insert7 Node00
Node5LinkedList94Node03index == 09 insert7 insert9
insert2 Node08
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 7Node10insert7 Node12
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 7Node14insert7 Node00
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 7Node18index == 09 insert7 insert9
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 7Node1 Node24
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 7insert12
C#
insert2 insert3
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 7Node1 Node9
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
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 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 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 4 Node65
Java
Node13
Node14class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 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 7Node19Node20 Node21
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 7LinkedList05
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 7LinkedList07LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 7Node1 Node28
LinkedList0
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 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 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 LinkedList8LinkedList9Node0
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 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 7Node4
Node0Node1 Node2
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 7Node1 Node9
LinkedList0
LinkedList1 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 45
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
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 LinkedList8LinkedList9Node0
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 7Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 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 58
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 60
LinkedList0
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 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 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 7LinkedList60LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 7Node70
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 7Node72
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 7Node74
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 7Node76
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 7Node78
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 7Node80
LinkedList0
LinkedList0
JavaScript
Node8
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 == 014
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 6
Node5index == 018
index == 019index == 020index == 021LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
index == 019index == 020index == 026
Node5LinkedList0
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 7LinkedList0
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 7Node9 index == 03
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 6
Node5index == 037Node20 index == 039
Node5Node1 Node28
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 7LinkedList0
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 7Node9 index == 047
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 6
Node5class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 LinkedList8LinkedList9Node0
index == 055Node1 Node2
Node5Node4
index == 055Node7
Node5Node1 Node9
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 7LinkedList0
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 7Node9 insert12
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 6
Node5class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 LinkedList8LinkedList9Node0
index == 055Node1class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
Node5index == 081class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 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 58
Node5class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 60
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 7LinkedList0
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 == 089LinkedList9class Node: def __init__(self, data, node=None): self.data = data self.next = node class LinkedList: def __init__(self, node=None): self.head = node def __repr__(self): values = [] curr = self.head while curr: values.append(curr.data) curr = curr.next return ', '.join(map(str, values)) def insert(self, value, index=0, node=None): node = node or self.head # if node==None, then assign self.head if node.next: if index == 0: node.next, node.data = Node(node.data, node.next), value else: self.insert(value, index=index-1, node=node.next) else: # if terminal node, ignore index node.next = Node(value) ll = LinkedList(Node(1, Node(3, Node(4)))) print(ll) # 1, 3, 4 ll.insert(2, 1) print(ll) # 1, 2, 3, 4 ll.insert(5, 4) print(ll) # 1, 2, 3, 4, 5 35
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 7Node70
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 7Node72
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 7Node74
index == 055Node1 Node2
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 7Node78
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 7Node80
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 26
Node5Node1 Node9AMIT 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.