利用前面的实验建立一个有序的单链表L={5,12,14,18,23,34},然后将元素15插入到单链表中,要求单链表还是有序的单链表,最后依次显示当前单链表中的数据元素。
时间: 2024-05-02 09:22:01 浏览: 21
以下是Python实现:
```python
# 定义链表节点类
class Node:
def __init__(self, data=None, next=None):
self.data = data
self.next = next
# 定义有序单链表类
class SortedLinkedList:
def __init__(self):
self.head = None
# 插入元素
def insert(self, data):
new_node = Node(data)
if self.head is None or data < self.head.data:
new_node.next = self.head
self.head = new_node
else:
current = self.head
while current.next is not None and current.next.data < data:
current = current.next
new_node.next = current.next
current.next = new_node
# 遍历链表并输出元素
def display(self):
current = self.head
while current is not None:
print(current.data, end=' ')
current = current.next
# 创建有序单链表
L = SortedLinkedList()
L.insert(5)
L.insert(12)
L.insert(14)
L.insert(18)
L.insert(23)
L.insert(34)
# 将元素15插入有序单链表
L.insert(15)
# 输出有序单链表中的元素
L.display()
```
输出结果为:5 12 14 15 18 23 34