day3:142. 环形链表 II

环,可以联想到操场跑步。两个人同时同地出发,当跑得快的人第一次追上跑的慢的人,快的人一定比慢的人多跑一圈

解题方法:快慢指针

```js

/**

* Definition for singly-linked list.

* function ListNode(val) {

* this.val = val;

* this.next = null;

* }

*/

/**

* @param {ListNode} head

* @return {ListNode}

*/

var detectCycle = function(head) {

let fast = head

let slow = head

let hasCycle = false

while(fast && fast.next){

fast = fast.next.next

slow = slow.next

if(fast == slow){

hasCycle = true

break

}

}

if(hasCycle){

fast = head

while(fast != slow){

fast = fast.next

slow = slow.next

}

}

return hasCycle? slow:null

};

```

总结一下我之前存在的问题:

1.指针移动语法:fast = fast.next.next,而非数字加法:fast +=2

2.第二个循环条件:fast != slow,而非:fast == slow

3.无环情况的特殊处理

关联知识:js对象比较 == 和 === 完全等价

在 JavaScript 中比较两个对象,比较的是它们的内存地址(引用)

相关推荐
李白的手机5 分钟前
前端→Java→MySQL 时区时间处理全链路深度解析
前端·后端
踩着两条虫7 分钟前
AI驱动的 Vue3应用开发平台深入探究(十五):扩展与定制之自定义设置器与属性编辑器
前端·vue.js·人工智能·低代码·系统架构·编辑器
恋猫de小郭10 分钟前
Flutter 3.41.6 版本很重要,你大概率需要更新一下
android·前端·flutter
Surmon6 小时前
彻底搞懂大模型 Temperature、Top-p、Top-k 的区别!
前端·人工智能
木斯佳8 小时前
前端八股文面经大全:bilibili生态技术方向二面 (2026-03-25)·面经深度解析
前端·ai·ssd·sse·rag
不会写DN8 小时前
Gin 日志体系详解
前端·javascript·gin
冬夜戏雪9 小时前
实习面经记录(十)
java·前端·javascript
爱学习的程序媛10 小时前
【Web前端】JavaScript设计模式全解析
前端·javascript·设计模式·web
小码哥_常10 小时前
从SharedPreferences到DataStore:Android存储进化之路
前端
老黑10 小时前
开源工具 AIDA:给 AI 辅助开发加一个数据采集层,让 AI 从错误中自动学习(Glama 3A 认证)
前端·react.js·ai·nodejs·cursor·vibe coding·claude code