题目描述
输入一个链表,反转链表后,输出新链表的表头。
示例1
输入
{1,2,3}
返回值
{3,2,1}
代码思路
首先创建一个新链表,对目标链表进行遍历并对新链表进行头插法即可实现。
答案
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function ReverseList(pHead)
{
if(pHead==null){
return null;
}
let pre=new ListNode(0);
pre.next=new ListNode(pHead.val);
pHead=pHead.next;
while(pHead!=null){
let _next=new ListNode(pHead.val);
_next.next=pre.next;
pre.next=_next;
pHead=pHead.next;
}
pre=pre.next;
return pre;
}
运行环境:JavaScript (V8 6.0.0)
运行时间:11ms
占用内存:5392KB