《剑指offer》从尾到头打印链表
生活随笔
收集整理的這篇文章主要介紹了
《剑指offer》从尾到头打印链表
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
此題的解法較多,編程期間需要注意的是,如果有頭結(jié)點(diǎn)的話,該節(jié)點(diǎn)是有值的,廢話少說,上代碼
實(shí)現(xiàn)方式一:直接用list存儲(chǔ)元素,然后用Collections工具類里的翻轉(zhuǎn)方法把該list翻轉(zhuǎn)就可以了
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;} }實(shí)現(xiàn)方式二:有人利用遞歸解,思想更簡潔
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;} }
總結(jié)
以上是生活随笔為你收集整理的《剑指offer》从尾到头打印链表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《剑指offer》替换空格
- 下一篇: 《剑指offer》用两个栈实现队列