输入 N个单词,建个单链表,然后从头节点开始遍历输出(递归实现) 例如输入: 3. one atwO. three 输出 Three two one
时间: 2024-03-20 07:44:05 浏览: 55
好的,这是一个简单的链表操作,我可以帮你实现。你可以先输入一个整数N表示单词的数量,然后再输入N个单词,我们将这些单词存储在一个单链表中,然后递归输出它们。
以下是 Python 代码实现:
```python
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def build_linked_list(n):
# 输入n个单词,建立单链表
if n == 0:
return None
word = input().strip().capitalize()
head = ListNode(word)
head.next = build_linked_list(n-1)
return head
def print_linked_list(head):
# 递归遍历链表,输出单词
if head is None:
return
print_linked_list(head.next)
print(head.val, end=" ")
n = int(input())
head = build_linked_list(n)
print_linked_list(head)
```
这段代码中,我们定义了一个 ListNode 类表示链表节点。在 build_linked_list 函数中,我们递归地读入单词,并创建一个链表。在 print_linked_list 函数中,我们递归遍历链表,并输出单词。注意,我们先递归输出链表的后半部分,再输出当前节点的值,这样就可以实现从头节点开始遍历输出的效果。
你可以尝试输入样例数据,看看代码是否能够正确输出结果。
阅读全文