leetcode206-反转链表

leetcode 206

思路

考虑使用双指针的方式来进行反转,定义一个pre指针,指向需要反转的位置,cur指针代表当前位置,一层层进行反转,中间需要一个临时指针也就是代码中的node,因为一旦反转,之前的链路就断开了,比如cur.next = pre设置以后,原来的cur.next就找不到了,所以需要设置一个临时指针保存原本的cur.next,这样才能继续下一步操作

图片来自代码随想录

实现

js 复制代码
var reverseList = function (head) {
  let cur = head;
  let pre = null;
  while (cur) {
    let node = cur.next;
    cur.next = pre;
    pre = cur;
    cur = node;
  }
  return pre;
};
相关推荐
不会就选b11 小时前
算法日常・每日刷题--<贪心>14
算法
mmmmath_313 小时前
LeetCode.541.反转字符串II
数据结构·算法·leetcode
Navigator_Z13 小时前
LeetCode //MySQL - 1251. Average Selling Price
c语言·算法·leetcode
醇氧14 小时前
MySQL 8.0 系统表损坏与引擎转换故障排查实战
数据结构·算法
大熊背15 小时前
《Color constancy by characterization of illumination chromaticity》之色度色域最大化算法(二)
算法·白平衡·色度·色温
钓鱼的肝15 小时前
梳理(1-5)
c++·经验分享·笔记·算法·青少年编程
参.商.15 小时前
【Day 53】76. 最小覆盖子串
leetcode·golang
HZZD_HZZD15 小时前
CSDN_批发市场水电漏损归因算法LAM的原理与落地
嵌入式硬件·物联网·算法
shirsl17 小时前
算法 Day 5 树 / 二叉树 + DFS
数据结构·python·算法