头插法实现单链表输出26个英文字母程序
时间: 2024-09-28 18:13:06 浏览: 37
头插法创建单链表并输出.cpp
头插法(也称为头部插入法)是一种在单链表中插入节点的方式,通常用于构建动态生成的数据结构,例如在这个场景下,我们可以使用它来创建一个包含所有英文小写字母的单链表,并按字母顺序排列。
首先,我们需要定义一个节点类,包括字符数据和指向下一个节点的指针:
```python
class Node:
def __init__(self, char):
self.char = char
self.next = None
```
然后,我们可以初始化一个头节点 `head` 和一个辅助节点 `current`,并从'a'开始遍历:
```python
def insert_sorted(head, char):
if not head or head.char > char:
new_node = Node(char)
new_node.next = head
return new_node
else:
current = head
while current.next and current.next.char < char:
current = current.next
new_node = Node(char)
new_node.next = current.next
current.next = new_node
return head
```
最后,我们可以在主函数中依次插入每个字母,并处理空链表的情况:
```python
def print_alphabet_list():
head = None
for i in range(ord('a'), ord('z') + 1):
head = insert_sorted(head, chr(i))
# 输出链表
current = head
while current:
print(current.char, end=" -> ")
current = current.next
print("None")
# 初始化并打印链表
print_alphabet_list()
```
运行这个程序会得到一个按字母顺序排列的小写字母单链表。
阅读全文