# 从尾到头打印链表
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
# 示例 1:
输入:head = [1,3,2]
输出:[2,3,1]
# 分析
借助 一次遍历 和 栈 来完成
# 代码
/**
* @param {ListNode} head
* @return {number[]}
*/
var reversePrint = function(head) {
let stack = []
let pre = head;
while(pre !== null){
stack.push(pre.val)
pre = pre.next;
}
// left right 交换
return stack.reverse()
};
关于 stack.reverse()
代码替换
let left=0,right=stack.length-1
let temp
while(left<right){
temp = stack[left]
stack[left] = stack[right]
stack[right] = temp
left++;
right--
}
return stack