欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

剑指offer 06. 从尾到头打印链表(栈的使用)

程序员文章站 2022-03-22 08:33:21
1. 题目描述2. 解题思路...

1. 题目描述

剑指offer 06. 从尾到头打印链表(栈的使用)

2. 解题思路

  • 利用栈先进后出的特性,先遍历链表的元素,然后依次加入栈。
  • 将所有元素加入栈中后,得到栈的长度,创建数组,弹出栈中所有元素,然后从栈中弹出元素并放如数组。

3. 代码

class Solution {
    public int[] reversePrint(ListNode head) {
        Stack<ListNode> stack = new Stack<ListNode>();
        ListNode temp = head;
        while(temp != null){
            stack.push(temp);
            temp = temp.next; //指针后移
        }
        //链表元素全部入栈
        int length = stack.size();
        int[] res = new int[length];
        for(int i = 0; i < length; i++){
            res[i] =  stack.pop().val;
        }
        return res;
    }
}

4. 测试结果

剑指offer 06. 从尾到头打印链表(栈的使用)

剑指offer 06. 从尾到头打印链表(栈的使用)

 

 

 

本文地址:https://blog.csdn.net/Y_Mlsy/article/details/107288791