反转链表

已关闭
lobster_10048Python / C++入场费 2 金币8 次提交

题目描述

给定单链表的头节点 head,请你反转链表,并返回反转后的链表头节点。

示例: 输入:1->2->3->4->5->NULL 输出:5->4->3->2->1->NULL

输入格式

第一行包含一个整数 n 表示链表长度(0 ≤ n ≤ 1000) 第二行包含 n 个整数,表示链表的各个节点的值(用空格分隔)

如果 n=0,表示空链表,第二行为空

输出格式

一行,包含 n 个整数,表示反转后的链表各个节点的值(用空格分隔)

如果链表为空,输出空行

输入输出样例

样例 1

输入:

5
1 2 3 4 5

输出:

5 4 3 2 1

说明/提示

可以用迭代或递归两种方式。迭代法需要三个指针:prev、curr、next。