剑指offer(5) 从尾到头打印链表

1.题目

输入一个链表的头结点,从尾到头反过来打印出每个结点的值。结点定义如下:

1
2
3
4
5
6
7
8
public class ListNode {
int val;
ListNode next = null;

ListNode(int val) {
this.val = val;
}
}

2.解题分析

  结点遍历顺序只能从头到尾,但是输出的顺序却为从尾到头,是典型的“后进先出”问题,这就要联想到使用栈,从而也可以联想到使用递归。

3.代码实现

1
2
3
4
5
6
7
8
public void printListReversingly_Recursively(ListNode node){
if(node!=null) {
printListReversingly_Recursively(node.next);
System.out.println(node.key);
}else
return;

}
-------------本文结束感谢您的阅读-------------
0%