剑指Offer LeetCode 面试题06. 从尾到头打印链表

简介: 剑指Offer LeetCode 面试题06. 从尾到头打印链表

面试题06. 从尾到头打印链表

输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。

示例 1:

输入:head = [1,3,2]

输出:[2,3,1]

解题

利用Stack栈先进后出的特征

import java.util.Arrays;
import java.util.Stack;
class Solution {
    static  public int[] reversePrint(ListNode head) {
        Stack<Integer> stack = new Stack<>();
        while (head!=null){
            stack.push(head.val);
            head = head.next;
        }
        int ins[] = new int[stack.size()];
        int i = 0;
        while (!stack.empty()){
            ins[i]=stack.pop();
            i++;
        }
        return ins;
    }
    public static void main(String[] args) {
        ListNode l1 = new ListNode(1);
        ListNode l2 = new ListNode(3);
        ListNode l3 = new ListNode(2);
        l1.next=l2;
        l2.next=l3;
        System.out.println(Arrays.toString(reversePrint(l1)));
    }
}
目录
相关文章
|
1月前
《剑指offer》——合并两个排序的链表
《剑指offer》——合并两个排序的链表
|
1月前
|
算法
【数组相关面试题】LeetCode试题
【数组相关面试题】LeetCode试题
【移除链表元素】LeetCode第203题讲解
【移除链表元素】LeetCode第203题讲解
|
12天前
|
算法 定位技术
【leetcode】剑指 Offer II 105. 岛屿的最大面积-【深度优先DFS】
【leetcode】剑指 Offer II 105. 岛屿的最大面积-【深度优先DFS】
15 0
|
13天前
【力扣】21. 合并两个有序链表
【力扣】21. 合并两个有序链表
|
25天前
|
算法
【力扣经典面试题】121. 买卖股票的最佳时机
【力扣经典面试题】121. 买卖股票的最佳时机
|
25天前
|
存储
【力扣经典面试题】80. 删除有序数组中的重复项 II
【力扣经典面试题】80. 删除有序数组中的重复项 II
|
1月前
《剑指offer》——从尾到头打印链表
《剑指offer》——从尾到头打印链表
|
1月前
|
存储 JavaScript
leetcode82. 删除排序链表中的重复元素 II
leetcode82. 删除排序链表中的重复元素 II
22 0
|
1月前
leetcode83. 删除排序链表中的重复元素
leetcode83. 删除排序链表中的重复元素
10 0

热门文章

最新文章