怎么用python创建无头结点的单链表
时间: 2023-05-28 18:05:22 浏览: 112
可以使用Python中的类来表示单链表,每个节点包含数据和指向下一个节点的指针。无头结点的单链表通常需要在插入和删除节点时特别处理。
下面是一个示例代码,创建一个无头结点的单链表,并添加几个节点:
```python
class Node:
def __init__(self, data=None):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def add(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
else:
current_node = self.head
while current_node.next:
current_node = current_node.next
current_node.next = new_node
linked_list = LinkedList()
linked_list.add(1)
linked_list.add(2)
linked_list.add(3)
```
在上面的示例中,我们定义了两个类,一个是节点类Node,一个是单链表类LinkedList。每个节点包含一个数据和一个指向下一个节点的指针。单链表类包含一个头节点,初始值为None,表示一个空链表。我们提供了一个add()方法来添加新节点。
在add()方法中,如果链表为空,则将新节点设置为头节点。否则,我们遍历链表找到最后一个节点,并将新节点添加到最后一个节点的next属性中。
注意,由于这是一个无头结点的单链表,我们需要特别处理在链表开头插入节点的情况。在这种情况下,我们需要将新节点设置为头节点,并将它的next属性指向原来的头节点。在删除节点时,我们需要特别处理删除头节点的情况。
阅读全文