【剑指offer】面试题6:从尾到头打印链表(Java)
輸入一個鏈表的頭節點,從尾到頭反過來返回每個節點的值(用數組返回)。
?
示例 1:
輸入:head = [1,3,2]
輸出:[2,3,1]
?
限制:
0 <= 鏈表長度 <= 10000
思路:利用棧
/**
?*?Definition?for?singly-linked?list.
?*?public?class?ListNode?{
?*?????int?val;
?*?????ListNode?next;
?*?????ListNode(int?x)?{?val?=?x;?}
?*?}
?*/
class?Solution?{
????public?int[]?reversePrint(ListNode?head)?{
????????Stack<Integer>?stack?=?new?Stack<Integer>();
????????while(head!=null)
????????{
????????????stack.push(head.val);
????????????head?=?head.next;
????????}
????????int?nums[]?=?new?int[stack.size()];
????????for(int?i=0;i<nums.length;i++)
????????{
????????????nums[i]?=?stack.pop();
????????}
????????return?nums;
????}
}
總結
以上是生活随笔為你收集整理的【剑指offer】面试题6:从尾到头打印链表(Java)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Leetcode--1004. 最大连续
- 下一篇: Leetcode--162. 寻找峰值