剑指 Offer 03. 数组中重复的数字

发布时间:2024-12-25 05:08

理解数据结构,如数组、列表和字典,它们是编程中的重要工具。 #生活技巧# #数码产品使用技巧# #编程入门指南#

最新推荐文章于 2021-05-27 23:32:00 发布

iblue_coffee 于 2020-09-10 11:28:23 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

找出数组中重复的数字。

在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。

示例 1:

输入:

[2, 3, 1, 0, 2, 5, 3]

输出:2 或 3

限制:

2 <= n <= 100000

解题思路:

class Solution {

public:

int findRepeatNumber(vector<int>& nums) {

set<int> mySet;

for(auto n : nums) {

if(mySet.count(n) == 1)

return n;

else

mySet.insert(n);

}

return 0;

}

};

class Solution {

public:

int findRepeatNumber(vector<int>& nums) {

map<int, int> myMap;

for(auto n : nums) {

if(myMap.count(n) == 1)

return n;

else

++myMap[n];

}

return 0;

}

};

class Solution {

public:

int findRepeatNumber(vector<int>& nums) {

for(int i = 0; i < nums.size(); ++i) {

while(i != nums[i]) {

if(nums[i] == nums[nums[i]])

return nums[i];

else

swap(nums[i], nums[nums[i]]);

}

}

return 0;

}

};

网址:剑指 Offer 03. 数组中重复的数字 https://www.yuejiaxmz.com/news/view/558957

相关内容

电信天翼数字生活科技面经(已offer)
实用:python随机产生2组各10个数字的列表,统计重复和不重复数字(集合练习)
python中字符串转数组、数组转字符串
数字美的 2025
数字城管向卫生死角亮剑
数字化转型:数字化的组织方案
“西湖论剑”安全大会多位院士专家支招数字安全
字节跳动 战略分析 面经 已offer
重复手写+无缝数字化=超强笔记
数字生活指南 (guidebook)

随便看看