輸入一個鏈表的頭節點,從尾到頭反過來打印出沒個節點的值

劍指Offer

題目:輸入一個鏈表的頭節點,從尾到頭反過來打印出沒個節點的值。

解題思路


利用棧的先進後出實現

遞歸
利用遞歸先遍歷後輸出

代碼實現

public static void printListNode(ListNode listNode){
        Stack<ListNode> stack = new Stack<>();

        while (listNode != null) {
            stack.push(listNode);
            listNode = listNode.getListNode();
        }
        while (!stack.empty()) {
            System.out.println(stack.pop().getData());
        }
}

遞歸

public static void printListNode2(ListNode listNode){
        if (listNode == null) {
            return;
        }
        printListNode2(listNode.getListNode());
        System.out.println(listNode.getData());
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章