当前位置: 首页 > news >正文

避免视觉效果混淆成都seo招聘

避免视觉效果混淆,成都seo招聘,牌子网排名是真的假的,网络运营培训课程给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整…

给定一个链表的头节点  head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。

如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。

不允许修改 链表。

示例 1:

输入:head = [3,2,0,-4], pos = 1

输出:返回索引为 1 的链表节点

解释:链表中有一个环,其尾部连接到第二个节点。

示例 2:

输入:head = [1,2], pos = 0

输出:返回索引为 0 的链表节点

解释:链表中有一个环,其尾部连接到第一个节点。

示例 3:

输入:head = [1], pos = -1

输出:返回 null

解释:链表中没有环。

提示:

  • 链表中节点的数目范围在范围 [0, 10^4] 内
  • -10^5 <= Node.val <= 10^5
  • pos 的值为 -1 或者链表中的一个有效索引

进阶:你是否可以使用 O(1) 空间解决此题?

解法思路:

1、hash,遍历每个节点并记录,再次遍历到则存在环并返回

2、快慢指针,先判断是否有环,若有,则找出环的第一个节点(从相遇点到入环点的距离加上 n−1 圈的环长,恰好等于从链表头部到入环点的距离,使用第三个指针(初始化指向head),third 与 slow 刚好在入环处相遇)

法一:

/*** Definition for singly-linked list.* class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {public ListNode detectCycle(ListNode head) {// hash// Time: O(n)// Space: O(n)ListNode pos = head;Set<ListNode> set = new HashSet<>();while (pos != null) {if (set.contains(pos)) {return pos;} else {set.add(pos);}pos = pos.next;}return null;}
}

 法二:

/*** Definition for singly-linked list.* class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {public ListNode detectCycle(ListNode head) {// 快慢指针,先判断是否有环,若有,则找出环的第一个节点// 1. 判断是否有环if (head == null || head.next == null || head.next.next == null) return null;ListNode slow = head;ListNode fast = head;boolean hasCircle = false;while (fast.next != null && fast.next.next != null) {slow = slow.next;fast = fast.next.next;if (slow == fast) {hasCircle = true;break;}}// 2. 找出入环节点// 从相遇点到入环点的距离加上 n−1 圈的环长,恰好等于从链表头部到入环点的距离// 使用第三个指针(初始化指向head),third 与 slow 刚好在入环处相遇 if (hasCircle) {ListNode third = head;while (slow != third) {slow = slow.next;third = third.next;}return third;}return null;}
}

数学证明:从相遇点到入环点的距离加上 n−1 圈的环长,恰好等于从链表头部到入环点的距离 

http://www.mmbaike.com/news/52755.html

相关文章:

  • 国内建站公司企业网站seo推广方案
  • 网站的优化公司腾讯搜索引擎入口
  • 怎么下载爱南宁app呢郑州seo推广外包
  • 做宣传单赚钱的网站百度竞价推广后台
  • 深圳网站上线方案什么软件可以找客户资源
  • 给企业做网站运营网页查询
  • 怎么用ajax做电商网站品牌营销与推广
  • 网站怎么做营销百度免费网站制作
  • 成都旅游的网站建设网站运营是做什么的
  • 北京注销网站备案seo线上培训机构
  • 学校做网站一般多少钱竞价托管信息
  • 嵌入式工程师月薪多少搜索引擎优化营销
  • python做网站框架网络推广营销方法
  • 有什么网站做任务给钱的成都私人网站制作
  • 西安住房建设局网站谷歌推广怎么做
  • 网站后门怎么去除微信公众号推广网站
  • 如何做网站电话seo综合排名优化
  • 手机网站建设分析从事网络营销的公司
  • 施工企业市场调查目的与主题主要有()。谷歌优化教程
  • 杭州网站建设app能搜任何网站的浏览器
  • 两个域名同一个网站做优化网站排名优化培训
  • 怀化市建设局网站seoul是什么意思中文
  • 中国建设银行网站在哪上市网络营销策划名词解释
  • 企业准备做网站的准备工作营销培训心得体会
  • dedecms做的网站收费吗网络营销软件哪个好用
  • 网页设计作业制作个人网站只要做好关键词优化
  • 宜春网站建设哪家专业企业培训课程体系
  • 图片制作视频短片用什么软件好谷歌优化排名怎么做
  • 做外贸常用的网站有哪些教育培训机构管理系统
  • 企业营销型网站策划书百度爱采购优化软件