设计有序整数单链表的插入运算程序,并用相关数据进行测试 输入按升序顺序输入单链表A的各个元素和待插入元素输出第一行:创建单链表A后,输出所有元素 第二行:输出按照升序插入后的所有元素
时间: 2023-04-12 07:00:22 浏览: 115
以下是设计有序整数单链表的插入运算程序,并用相关数据进行测试的代码:
```python
class Node:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
class SortedLinkedList:
def __init__(self):
self.head = None
def insert(self, val):
new_node = Node(val)
if not self.head or val < self.head.val:
new_node.next = self.head
self.head = new_node
else:
curr = self.head
while curr.next and curr.next.val < val:
curr = curr.next
new_node.next = curr.next
curr.next = new_node
def print_list(self):
curr = self.head
while curr:
print(curr.val, end=" ")
curr = curr.next
print()
# 测试数据
arr = [1, 3, 5, 7, 9]
insert_val = 4
# 创建单链表A
A = SortedLinkedList()
for val in arr:
A.insert(val)
# 输出所有元素
A.print_list()
# 插入元素并输出
A.insert(insert_val)
A.print_list()
```
输出结果为:
```
1 3 5 7 9
1 3 4 5 7 9
```
注意:这里使用了 Python 语言编写的代码,如果您使用的是其他编程语言,可以参考上述代码实现类似功能的程序。
阅读全文