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;
};
相关推荐
ECT-OS-JiuHuaShan2 分钟前
哲学是迭代学,数学是拓扑学
开发语言·人工智能·学习·算法·机器学习·php·拓扑学
All for pursuit.4 分钟前
【数组-5】560.和为K的子数组
数据结构·c++·算法·leetcode
星子yu20 分钟前
【Java数据结构】二叉树 好像就这样?
java·数据结构
Beyond_System|系统之外32 分钟前
【学编程】Python基础编程题100道(1-20)
java·数据结构·算法
维克兜率天36 分钟前
【维克】一个极端值,毁掉了整个因子
大数据·人工智能·python·算法·机器学习
船厂电气自动化ai大模型43 分钟前
AI大模型与数学 第75课 基、维度、向量空间坐标
数据结构·线性代数·算法·机器学习·推荐算法
博界IT精灵43 分钟前
专题1:线性表
考研·算法
CSDN_RTKLIB2 小时前
树、图高层抽象模型
算法
Dola_Zou9 小时前
工厂智能排产软件算法保护与按产线计费实战
算法·自动化·软件工程·软件加密
啦啦啦啦啦zzzz11 小时前
Logger的组装(c++20)
c++·算法·c++20