输入一个链表,按链表从尾到头的顺序返回一个ArrayList
从尾到头打印链表
http://www.nowcoder.com/questionTerminal/d0267f7f55b3412ba93bd35cfa8e8035
程序解析
本题要返回一个ArrayList,而且是从尾至头。这让我们想到使用堆栈Stack来解决问题。先从头至尾遍历至栈,在将数据出栈即可。
源代码
package nowcoderPractice; import java.util.ArrayList; import java.util.Stack; public class testNode { public static void main(String[] args) { ArrayList<Integer> list1=new ArrayList<Integer>();//建立数据表 Stack<Integer> stack=new Stack<Integer>();//建立数据栈 //执行入栈操作 while(head!=null) { stack.push(head.val); head=head.next; } //执行出栈操作 while(!stack.empty()) { list1.add(stack.pop()); } System.out.println(list1); } }