c++用递归反向输出单链表中的每个节点元素值。(提示:不带头结点)
时间: 2023-12-10 12:38:29 浏览: 81
单链表递归输出
可以使用递归的方式输出单链表的每个节点元素值,具体的实现如下:
```c++
struct ListNode {
int val;
ListNode* next;
ListNode(int x) : val(x), next(NULL) {}
};
void reversePrint(ListNode* head) {
if (head == NULL) {
return;
}
reversePrint(head->next);
cout << head->val << " ";
}
```
上述代码中,我们先判断当前节点是否为空,如果为空则直接返回;否则先递归输出当前节点后面的所有节点,再输出当前节点的值。
需要注意的是,这里并没有使用头结点,因此在递归过程中需要判断当前节点是否为空。另外输出的顺序是从后往前输出,符合题目要求。
阅读全文