news 2026/4/29 12:09:24

leetcode 287 寻找重复数 类似环形链表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 287 寻找重复数 类似环形链表


这个题目很狗屎,强行限定条件,范围是1-n,这样0必然不会被元素指向,构建图时必然可以形成一个狗链形图。这样,唯一的环入口入度是2,就可以套用他的快慢指针算法,很无聊。和力扣142题目一样

classSolution{public:intfindDuplicate(vector<int>&nums){intfast=0,slow=0;while(fast==0||fast!=slow){slow=nums[slow];fast=nums[nums[fast]];}intnew_p=0;while(new_p!=slow){new_p=nums[new_p];slow=nums[slow];}returnnew_p;}};

这个题是比较难的一个题,题目要求不允许修改数组,而且常数空间。这里我们就必须用到数组的1到n规定了。

注:此题和剑指offer 03很像,但是剑指offer那个题不交换基本是没法做的,此题有不修改数组的解法。

此题由于只有一个重复元素,可以使用类似链表的做法,此题其实和环形链表2是一样的,将本身数字当做索引就能一直跳转,由于有重复数字,所以一定能找到环,我们要做的就是找到入环点。代码如下:

classSolution{public:intfindDuplicate(vector<int>&nums){intslow=0,fast=0,tmp=0;while(1){slow=nums[slow];fast=nums[nums[fast]];if(slow==fast)break;}while(1){tmp=nums[tmp];slow=nums[slow];if(tmp==slow)returntmp;}return0;}};
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/29 12:07:49

STM32CubeMX配置FreeRTOS避坑指南:为什么你的SysTick时基源一定要改?

STM32CubeMX配置FreeRTOS避坑指南&#xff1a;为什么你的SysTick时基源一定要改&#xff1f; 在嵌入式开发中&#xff0c;STM32CubeMX和FreeRTOS的组合堪称黄金搭档。CubeMX提供了直观的图形化配置界面&#xff0c;而FreeRTOS则带来了强大的实时任务调度能力。然而&#xff0c;…

作者头像 李华
网站建设 2026/4/29 11:59:26

DLSS Swapper:为什么你的游戏需要这个智能版本管理工具?

DLSS Swapper&#xff1a;为什么你的游戏需要这个智能版本管理工具&#xff1f; 【免费下载链接】dlss-swapper 项目地址: https://gitcode.com/GitHub_Trending/dl/dlss-swapper 你是否曾遇到过这样的困扰&#xff1a;新游戏更新后帧率暴跌&#xff0c;或者DLSS版本不…

作者头像 李华
网站建设 2026/4/29 11:56:26

PetaPoco映射器自定义指南:从标准映射到约定映射

PetaPoco映射器自定义指南&#xff1a;从标准映射到约定映射 【免费下载链接】PetaPoco Official PetaPoco, A tiny ORM-ish thing for your POCOs 项目地址: https://gitcode.com/gh_mirrors/pet/PetaPoco PetaPoco作为一款轻量级ORM工具&#xff0c;其核心功能在于将数…

作者头像 李华
网站建设 2026/4/29 11:56:24

React Native DatePicker高级技巧:10个实战案例深度解析

React Native DatePicker高级技巧&#xff1a;10个实战案例深度解析 【免费下载链接】react-native-datepicker react native datePicker component for both Android and IOS, useing DatePikcerAndroid, TimePickerAndroid and DatePickerIOS 项目地址: https://gitcode.co…

作者头像 李华
网站建设 2026/4/29 11:54:46

NSudo编译构建全流程:从源码到可执行文件的完整教程

NSudo编译构建全流程&#xff1a;从源码到可执行文件的完整教程 【免费下载链接】NSudo [Deprecated, work in progress alternative: https://github.com/M2Team/NanaRun] Series of System Administration Tools 项目地址: https://gitcode.com/gh_mirrors/ns/NSudo N…

作者头像 李华