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 中比较两个对象,比较的是它们的内存地址(引用)

相关推荐
mCell5 小时前
如何零成本搭建个人站点
前端·程序员·github
mCell6 小时前
为什么 Memo Code 先做 CLI:以及终端输入框到底有多难搞
前端·设计模式·agent
恋猫de小郭6 小时前
AI 在提高你工作效率的同时,也一直在增加你的疲惫和焦虑
前端·人工智能·ai编程
少云清6 小时前
【安全测试】2_客户端脚本安全测试 _XSS和CSRF
前端·xss·csrf
萧曵 丶7 小时前
Vue 中父子组件之间最常用的业务交互场景
javascript·vue.js·交互
银烛木7 小时前
黑马程序员前端h5+css3
前端·css·css3
m0_607076607 小时前
CSS3 转换,快手前端面试经验,隔壁都馋哭了
前端·面试·css3
听海边涛声7 小时前
CSS3 图片模糊处理
前端·css·css3
IT、木易7 小时前
css3 backdrop-filter 在移动端 Safari 上导致渲染性能急剧下降的优化方案有哪些?
前端·css3·safari
0思必得07 小时前
[Web自动化] Selenium无头模式
前端·爬虫·selenium·自动化·web自动化