键盘输入一组元素,以0做结束输入的标记,建立一个带头结点的单向链表(无序,且值域为整型),遍历单向链表,显示相应元素。 输入格式: 1 2 3 4 5 6 7 8 0 输出格式: 1 2 3 4 5 6 7 8
时间: 2024-11-18 14:17:09 浏览: 32
键盘输入一组整数,当遇到数字0时,表示输入结束。我们可以创建一个`ListNode`类作为链表的节点结构,包含一个整数值和指向下一个节点的指针。然后,我们可以通过循环读取用户输入,并不断添加新节点到链表中,直到遇到0为止。
以下是步骤:
1. 初始化一个空的头节点`head`。
2. 循环读取用户的输入,直到遇到0:
- 将输入的整数转换为整型并创建一个新的节点。
- 将新节点的值设置为当前输入,将其next指向前一个节点(如果存在),如果没有前一个节点,则设为`head`。
- 更新头节点为新的节点。
3. 链表构建完成后,通过遍历`head`节点并打印每个节点的值,展示链表内容。
这里是一个伪代码示例:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def build_linked_list():
head = ListNode()
current = head
while True:
input_val = int(input())
if input_val == 0:
break
new_node = ListNode(input_val)
current.next = new_node
current = current.next
return head
def print_list(head):
current = head
while current is not None:
print(current.val, end=' ')
current = current.next
print()
# 使用
linked_list_head = build_linked_list()
print_list(linked_list_head)
```
阅读全文