定义一个不为空的链表
时间: 2024-09-18 20:00:26 浏览: 21
在计算机科学中,定义一个不为空的链表通常涉及到创建一个节点类,每个节点包含数据域和指向下一个节点的指针。以下是基本的步骤:
1. **节点类定义**:
- 创建一个名为`Node`或`LinkedListNode`的类,它有两个属性:`data`用于存储节点的数据(如整数、字符串等),以及`next`用于引用下一个节点。
```python
class Node:
def __init__(self, data):
self.data = data
self.next = None
```
2. **链表类定义**:
- 创建一个名为`LinkedList`或`NonEmptyList`的类,它有一个头节点`head`,初始化时设置为`None`表示链表开始时为空。
```python
class LinkedList:
def __init__(self):
self.head = None
```
3. **添加元素**:
- 提供一个方法(如`add_node`)来向链表中添加新节点,确保链表始终非空。
```python
class LinkedList:
# ...
def add_node(self, data):
if not self.head:
self.head = Node(data)
else:
current = self.head
while current.next:
current = current.next
current.next = Node(data)
```
4. **遍历链表**:
- 提供方法(如`traverse`)来访问链表中的所有节点,显示它们的数据。
```python
class LinkedList:
# ...
def traverse(self):
current = self.head
while current:
print(current.data)
current = current.next
```