题目描述
输入一个链表,按链表从尾到头的顺序返回一个ArrayList。
解题思路
本题我采用一个Stack装ArrayList的值,然后对Stack进行pop操作,就可以把值反序输出。
代码块
/**
* public class ListNode {
* int val;
* ListNode next = null;
*
* ListNode(int val) {
* this.val = val;
* }
* }
*
*/
import java.util.ArrayList;
import java.util.Stack;
public class Solution {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> list=new ArrayList();
Stack<Integer> stack = new Stack<Integer>();
ListNode p=listNode;
int value=0;
while(p!= null){
stack.push(p.val);
p=p.next;
}
while(!stack.empty()){
value=stack.pop();
list.add(value);
}
return list;
}
}
本文针对剑指Offer中的一道经典面试题——从尾到头打印链表,详细介绍了使用Stack辅助实现链表逆序输出的解题思路及Java代码实现。通过将链表元素依次压入Stack,再进行pop操作,最终得到从尾到头的链表值。
202

被折叠的 条评论
为什么被折叠?



