双链表 python
时间: 2023-10-30 20:05:51 浏览: 105
双链表.py
双链表(Doubly Linked List)是一种数据结构,它与普通链表(单链表)类似,但每个节点除了包含指向下一个节点的指针外,还包含指向上一个节点的指针。
在 Python 中,可以通过定义一个节点类和一个双链表类来实现双链表。下面是一个简单的示例代码:
```python
class Node:
def __init__(self, data):
self.data = data
self.next = None
self.prev = None
class DoublyLinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if self.head is None:
self.head = new_node
else:
current = self.head
while current.next:
current = current.next
current.next = new_node
new_node.prev = current
def print_list(self):
current = self.head
while current:
print(current.data)
current = current.next
```
上述代码中,Node 类表示双链表的节点,包含数据和两个指针(next 和 prev)。DoublyLinkedList 类则表示双链表,包含一个头节点,并提供了 append 方法用于在链表末尾添加新的节点,以及 print_list 方法用于打印链表中的数据。
使用示例:
```python
dllist = DoublyLinkedList()
dllist.append(1)
dllist.append(2)
dllist.append(3)
dllist.print_list()
```
输出结果:
```
1
2
3
```
这样就可以实现一个简单的双链表。当然,根据实际需求,你可以进一步扩展双链表的功能,比如实现删除节点、插入节点等操作。
阅读全文