剑指 Offer 06. 从尾到头打印链表

剑指 Offer 06. 从尾到头打印链表

难度:简单

problem

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

示例:

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

solution

遍历链表各个元素的val属性值,一次push到一个新数组中,最后返回这个数组的reverse()。

code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} head
* @return {number[]}
*/
var reversePrint = function(head) {
if (!head) return [];
let current = head;
let res = [];

do {
res.push(current.val);
current = current.next;
} while (current != null)

return res.reverse();
};

评论