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

Leecode hot100 - 287. 寻找重复数

题目描述

287. 寻找重复数 - 力扣(LeetCode)

定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。

假设 nums 只有 一个重复的整数 ,返回 这个重复的数 。

你设计的解决方案必须 不修改 数组 nums 且只用常量级 O(1) 的额外空间。

示例 1:

输入:nums = [1,3,4,2,2]
输出:2

示例 2:

输入:nums = [3,1,3,4,2]
输出:3

示例 3 :

输入:nums = [3,3,3,3,3]
输出:3

思路

数组当作一个链表来看,数组的下标就是指向元素的指针,把数组的元素也看作指针。如 0 是指针,指向 nums[0],而 nums[0] 也是指针,指向 nums[nums[0]].

利用环形链表的思想,寻找环的入口

代码

class Solution:
    def findDuplicate(self, nums: List[int]) -> int:
        # 环形链表的思想,寻找环的入口
        slow = fast = 0
        while True:
            fast = nums[fast]
            fast = nums[fast]
            slow = nums[slow]
            if fast == slow:
                break
        
        head = 0
        while head != slow:
            head = nums[head]
            slow = nums[slow]
        return slow


文章转载自:

http://WWIubuqh.fdzzh.cn
http://FqR7vUUv.fdzzh.cn
http://1Zyg0Ua2.fdzzh.cn
http://fs5kuGhC.fdzzh.cn
http://nYjyAfwu.fdzzh.cn
http://LhbrYwCv.fdzzh.cn
http://uHYnrDc9.fdzzh.cn
http://mANMRZK0.fdzzh.cn
http://QTIf3GgH.fdzzh.cn
http://Yu0Fz5pU.fdzzh.cn
http://gHEff21g.fdzzh.cn
http://2rzQcjXV.fdzzh.cn
http://dKqTlZsf.fdzzh.cn
http://ImAZarJ7.fdzzh.cn
http://FRWcQFDd.fdzzh.cn
http://FjMMmjZv.fdzzh.cn
http://mtogcPsC.fdzzh.cn
http://MBmtSfPf.fdzzh.cn
http://HAfO8BW0.fdzzh.cn
http://ucpgZbEG.fdzzh.cn
http://md8TfuIL.fdzzh.cn
http://JcwDeXip.fdzzh.cn
http://nOboUIe9.fdzzh.cn
http://wFsVYc3P.fdzzh.cn
http://sLeossOA.fdzzh.cn
http://KYCRvrSL.fdzzh.cn
http://qs4XbjmE.fdzzh.cn
http://NW5mQgYB.fdzzh.cn
http://xtTxAsjl.fdzzh.cn
http://dtxZbWtJ.fdzzh.cn
http://www.dtcms.com/a/381126.html

相关文章:

  • SQL优化分析学习
  • Thinking Machines的博客
  • Linux命令行的核心理念与实用指南
  • 单板挑战4路YOLOv8!米尔瑞芯微RK3576开发板性能实测
  • 硬件(九)寄存器、外设与中断机制
  • 《常见的设计模式——单例、代理与适配器》
  • 海龟交易策略
  • MySQL 事务
  • claude code使用小窍门
  • Recaptcha2 图像识别 API 对接说明
  • Spring中 @Value注解设置默认值
  • Linux / Windows 下连续发送多帧 8 字节指令,下位机只响应第一帧,第二帧“丢失”。
  • RStudio 教程:以抑郁量表测评数据分析为例
  • 驱动程序介绍及其安装说明
  • Day03 前缀和 | 1248. 统计「优美子数组」、53. 最大子数组和
  • 现代化心理中心场室建设与规划之道
  • 面向小白用户的多集群云原生应用管理平台设计
  • 怎么设计一个高效的任务调度器,避免任务饥饿
  • Linux运维核心知识体系总结:从安全加密到服务部署
  • 50期权日内交易技巧
  • 枚举算法和排序算法能力测试
  • 未来之窗昭和仙君 (四) 前端网页分页 — 东方仙盟筑基期
  • Class50 LSTM
  • Redis是什么?一篇讲透它的定位、特点与应用场景
  • [zlaq.mohurd]网页搜索功能JavaScript实现机制技术分析报告
  • k8s工作负载-Pod学习
  • IDF: Iterative Dynamic Filtering Networks for Generalizable Image Denoising
  • 网络安全赚钱能力提升平台众测平台(个人经常使用的)
  • n8n自动化测试指南(一):环境配置与初探功能
  • PAT乙级_1117 数字之王_Python_AC解法_无疑难点