《剑指offer》从尾到头打印链表
2017-06-30 13:56
453 查看
此题的解法较多,编程期间需要注意的是,如果有头结点的话,该节点是有值的,废话少说,上代码
实现方式一:直接用list存储元素,然后用Collections工具类里的翻转方法把该list翻转就可以了
import java.util.*;
public class Solution {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> list = new ArrayList<>();
if(listNode==null){
return list;
}
while(listNode!=null){
list.add(listNode.val);
listNode=listNode.next;
}
Collections.reverse(list);
return list;
}
}
实现方式二:有人利用递归解,思想更简洁
java 递归超简洁版本
public class Solution {
ArrayList<Integer> arrayList=new ArrayList<Integer>();
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
if(listNode!=null){
this.printListFromTailToHead(listNode.next);
arrayList.add(listNode.val);
}
return arrayList;
}
}
实现方式一:直接用list存储元素,然后用Collections工具类里的翻转方法把该list翻转就可以了
import java.util.*;
public class Solution {
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> list = new ArrayList<>();
if(listNode==null){
return list;
}
while(listNode!=null){
list.add(listNode.val);
listNode=listNode.next;
}
Collections.reverse(list);
return list;
}
}
实现方式二:有人利用递归解,思想更简洁
java 递归超简洁版本
public class Solution {
ArrayList<Integer> arrayList=new ArrayList<Integer>();
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
if(listNode!=null){
this.printListFromTailToHead(listNode.next);
arrayList.add(listNode.val);
}
return arrayList;
}
}
相关文章推荐
- (剑指Offer)面试题5:从尾到头打印链表
- 《剑指offer》——从尾到头打印链表
- 《剑指Offer》面试题:从尾到头打印链表
- 剑指offer(C++)——从尾到头打印链表
- 从尾到头打印链表 《剑指Offer》
- 《剑指Offer》面试题5:从尾到头打印链表
- 《剑指offer》牛客网java题解-从尾到头打印链表
- 《剑指offer》问题6 从尾到头打印链表 Java实现
- 剑指offer:5-从尾到头打印链表
- 《剑指offer》刷题笔记(链表):从尾到头打印链表
- 剑指offer--面试题5:从尾到头打印链表
- 《剑指Offer》学习笔记--面试题5:从尾到头打印链表
- 剑指offer《面试题5:从尾到头打印链表》
- 剑指offer 面试题5 从尾到头打印链表(栈实现)
- 剑指Offer系列-面试题5:从尾到头打印链表
- 剑指Offer学习总结-从尾到头打印链表
- 剑指Offer学习之面试题5 : 从尾到头打印链表
- 《剑指Offer》题目——从尾到头打印链表
- (PHP实现剑指offer)输入一个链表,从尾到头打印链表每个节点的值。
- 《剑指offer》-- (1)从尾到头打印链表