class Solution { public int findDuplicate(int[] nums) { if(nums == null || nums.length<=1) return -1; int fast = 0, slow = 0; while (true){ fast = num ...
转载 2021-08-30 19:06:00
200阅读
2评论
class Solution { public: int findDuplicate(vector<int>& nums) { unordered_map<int, int> in_map; for(int i =0; i < nums.size(); i++){ in_map[nums[i]]++ ...
转载 2021-07-24 15:29:00
86阅读
2评论
class Solution { public: int findDuplicate(vector<int>& nums) { int n = nums.size(); int l = 1, r = n-1, ans = -1; while(l <= r) { int mid = (l+r)/
i++
原创 4月前
22阅读
1. 不修改原数组,使用额外的空间class Solution { public: int findDuplicate(vector<int>& nums) { int n = nums.size(); vector<int> hash(n, -1); for(int i = 0; i < n; i++)
原创 2023-05-06 00:57:13
83阅读
###寻找重复的数字 考点,哈希表,或者带环链表的遍历 package leetcodemid.findduplicate; /** * 287. 寻找重复数 * 给定一个包含 n + 1 个整数的数组 nums ,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。 *
###寻找重复的数字 考点,哈希表,或者带环链表的遍历 package leetcodemid.findduplicate; /** * 287. 寻找重复数 * 给定一个包含 n + 1 个整数的数组 nums ,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。 *
题目:原题链接(中等)标签:字符串、哈希表解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)104ms (91.87%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def findDuplicate(self, paths: List[str]) -> List[List[str]]: hashmap =
原创 2021-08-26 10:42:07
66阅读
题目:原题链接(中等)标签:数组、双指针、二分查找解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)44ms (76.83%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def findDuplicate(self, nums: List[int]) -> int: return collections.
原创 2022-01-12 15:24:19
78阅读
题目:原题链接(中等)标签:数组、双指针、二分查找解法时间复杂度空间复杂度执行用时Ans 1 (Python)O(N)O(N)O(N)O(N)O(N)O(N)44ms (76.83%)Ans 2 (Python)Ans 3 (Python)解法一:class Solution: def findDuplicate(self, nums: List[int]) -> int: return collections.
原创 2021-08-26 10:30:49
110阅读
找出这些串中一个重复。 遍历一遍,然后用vector的find函数去查找就好了。 查找之前要把当前值记录一下,并删去,找到不久是这个重复了吗。 class Solution { public: int findDuplicate(vector& nums) { for(int i=0;i<nums.size();i++){ int
i++
原创 2022-08-05 15:58:13
18阅读
思路:一开始并没有什么头绪,直接排序加遍历以O(nlgn)的复杂度水过去了,后来看评论才知道有Floyd判圈算法这么秒的方法,简称龟兔赛跑;具体算法讲解可参考文章:算法-floyd判环(圈)算法,讲得很棒,便于理解;// 先排序再查找 O(nlgn)// static bool cmp(int a, int b)// {// return a < b;// }// int findDuplicate(vector<int> &nums)// {// i.
原创 2021-12-30 13:39:40
73阅读
287. 寻找重复数寻找重复数难度中等790给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3快慢指针// 快慢指针 如果数组中有重复的数字,那么必定会形成环// 时间复杂度为O(N)public int findDuplicate(int[] nums
原创 2021-07-28 10:02:09
224阅读
287. 寻找重复数寻找重复数难度中等790给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3快慢指针// 快慢指针 如果数组中有重复的数字,那么必定会形成环// 时间复杂度为O(N)public int findDuplicate(int[] nums
原创 2022-01-04 11:26:25
98阅读