以下是一个不使用面向对象编程创建有序列表的链表的解决方法的代码示例:
# 定义一个节点类
class Node:
def __init__(self, data):
self.data = data
self.next = None
# 创建链表
def create_linked_list():
# 输入有序列表的元素
elements = input("请输入有序列表的元素,以空格分隔:").split()
elements = [int(x) for x in elements] # 将输入的元素转换为整数
head = None
for element in elements:
new_node = Node(element)
if head is None:
head = new_node
else:
current = head
prev = None
while current is not None and current.data < element:
prev = current
current = current.next
if prev is None:
new_node.next = head
head = new_node
else:
prev.next = new_node
new_node.next = current
return head
# 输出链表
def print_linked_list(head):
current = head
while current is not None:
print(current.data, end=" ")
current = current.next
print()
# 测试代码
linked_list = create_linked_list()
print("链表的元素为:")
print_linked_list(linked_list)
此代码示例中,我们使用了一个Node
类来表示链表中的节点。create_linked_list
函数用于创建有序列表的链表,首先获取输入的有序列表元素,然后逐个将元素插入到链表中的正确位置。print_linked_list
函数用于打印链表的元素。最后,我们通过调用create_linked_list
函数创建链表,并通过调用print_linked_list
函数打印链表的元素。