// 链表结构和数组不同,不能直接reverse//可以遍历链表,push进一个arr,然后反转arrvar reversePrint = function(head) { let arr = [] while(head){ arr.push(head.val) head = head.next } // return arr.reverse() 可以不用后面的 let res = [] while(arr.length>0){ res.push(arr.pop()) } return res};//如果数据过大,会溢出吗???//用双指针var reversePrint = function(head) { let cur = null let pre = head while(pre){ let tmp = pre.next pre.next = cur cur = pre pre = tmp } // 此时cur是指向原链表尾端,倒叙 // 遍历cur,push进一个arr let res = [] while(cur){ res.push(cur.val) cur = cur.next } return res}//递归法