::
链表
反转链表
思路: 双指针迭代,prev记录前节点,curr遍历,反转指针
输入:head头节点
输出:反转后新头节点
思路及代码
思路:记录,反转 给前任赋null,现任是头节点 然后还有现任的时候,先把下任存好(const next = curr.next) 让现任的next指针去找前任,即 curr.next = prev 把前任换成现任, prev = curr 把现任换成下一任, curr = next
JS
function reverseList(head){ //传入头节点
let prev = null, curr = head; //头节点前节点为null,curr拿到头节点
while(curr){
const next = curr.next; //拿到当前节点的下一节点
curr.next = prev; //当前节点的next指向prev
prev = curr; //让prev指向curr当前指向的节点
curr = next; //再让curr指向next
}
return prev;
}Results
Theme Data
Page Data
Page Frontmatter
More
Check out the documentation for the full list of runtime APIs.