编写程序实现节点类 Node,实现链表的基本操作
时间: 2023-08-16 08:07:05 浏览: 99
好的,以下是一个简单的实现:
```python
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def add_at_beginning(self, data):
new_node = Node(data)
new_node.next = self.head
self.head = new_node
def add_at_end(self, data):
new_node = Node(data)
if self.head is None:
self.head = new_node
return
current_node = self.head
while current_node.next is not None:
current_node = current_node.next
current_node.next = new_node
def delete_node(self, data):
if self.head is None:
return
if self.head.data == data:
self.head = self.head.next
return
current_node = self.head
while current_node.next is not None:
if current_node.next.data == data:
current_node.next = current_node.next.next
return
current_node = current_node.next
def print_list(self):
current_node = self.head
while current_node is not None:
print(current_node.data)
current_node = current_node.next
```
这里我们定义了一个 `Node` 类表示链表的节点,以及一个 `LinkedList` 类表示链表。`add_at_beginning` 方法将新节点添加到链表的开头,`add_at_end` 方法将新节点添加到链表的末尾,`delete_node` 方法删除链表中指定的节点,`print_list` 方法将链表中的所有节点打印出来。
阅读全文