從尾到頭打印鏈表

輸入一個(gè)鏈表,按鏈表值從尾到頭的順序返回一個(gè)ArrayList。
鏈表節(jié)點(diǎn)定義:

/**
*    public class ListNode {
*        int val;
*        ListNode next = null;
*        ListNode(int val) {
*            this.val = val;
*        }
*    }
*
*/

鏈表訪問(wèn)是從頭到尾訪問(wèn)的,而要從尾到頭的訪問(wèn)鏈表,明顯是一個(gè)后進(jìn)先出的數(shù)據(jù)結(jié)構(gòu),也就是“?!?因此我們可以使用一個(gè)棧,對(duì)鏈表從頭到尾訪問(wèn),進(jìn)棧,在出棧??紤]到棧和遞歸的緊密關(guān)系,我們可以使用遞歸來(lái)實(shí)現(xiàn)程序,注意在鏈表過(guò)長(zhǎng)時(shí)可能會(huì)棧溢出。
代碼僅供參考

public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
        ArrayList<Integer> list = new ArrayList<>();
            if(listNode == null){
                return list;
            }
            recurVisitList(listNode,list);
            return list;
    }
    private void recurVisitList(ListNode node,ArrayList<Integer> list){
            if(node == null){
                return;
            }
            recurVisitList(node.next,list);
            list.add(node.val);
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 題目:輸入一個(gè)鏈表的頭節(jié)點(diǎn),從尾到頭反過(guò)來(lái)打印出每個(gè)節(jié)點(diǎn)的值。鏈表節(jié)點(diǎn)定義如下: 首先,明確要解決這個(gè)問(wèn)題肯定需要...
    冰楓澈閱讀 285評(píng)論 0 0
  • 題目描述 輸入一個(gè)鏈表,從尾到頭打印鏈表每個(gè)節(jié)點(diǎn)的值。 棧實(shí)現(xiàn) 要解決這個(gè)問(wèn)題,肯定要遍歷鏈表,從頭到尾遍歷鏈表,...
    哦漏昵稱已被占用閱讀 323評(píng)論 0 0
  • 1.題目描述輸入一個(gè)鏈表,從尾到頭打印鏈表每個(gè)節(jié)點(diǎn)的值。 2.算法分析這個(gè)題目有兩種方式可以解。一種方式是采用遞歸...
    充電實(shí)踐閱讀 342評(píng)論 0 1
  • 題目描述: · 輸入一個(gè)鏈表,從尾到頭打印鏈表每個(gè)節(jié)點(diǎn)的值。 解題思路: 思路1: 第一反應(yīng)是將鏈表中的指針?lè)崔D(zhuǎn),...
    FloatingIsland閱讀 358評(píng)論 0 0
  • 題目描述 輸入一個(gè)鏈表,從尾到頭打印鏈表每個(gè)節(jié)點(diǎn)的值。 輸入為鏈表的表頭,輸出為需要打印的“新鏈表”的表頭。 代碼...
    _minimal閱讀 744評(píng)論 0 0

友情鏈接更多精彩內(nèi)容