题目:输入一个链表,反转链表后,输出新链表的表头
思路
用一个中间数组temp存原链表的值,再利用栈的特性(先进后出),用pop()方法将数据逆向存回原链表
代码实现
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function ReverseList(pHead)
{
// write code here
var temp = [];
var currentNode = pHead;
while(currentNode){
temp.push(currentNode.val);
currentNode = currentNode.next;
}
//当前结点再次指向头结点
currentNode = pHead;
while(currentNode){
currentNode.val = temp.pop();
currentNode = currentNode.next;
}
return pHead;
}