在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
输入:
[2, 3, 1, 0, 2, 5, 3]
输出:2 或 3
限制:
2 <= n <= 100000
如果下标 i 存储的是 j,下标 j 中存储的还是 j,则说明 j 重复出现。
int findRepeatNumber(vector<int>& nums){
for(int i=0; i < nums.size(); i++){
while(nums[i] != i){ // 下标i中存储的不是i,而是j
int temp = nums[i];
if(temp == nums[temp]){ // 下标j中存储的是j
return temp; // throw repeat number
}
else{ // 下标j中存储的也不是j
swap(nums[i], nums[temp]);
// 交换下标j和下标i中的值,让下标j中是j
}
}
}
return -1; // find't repeat number
}
前言 在实际的开发当中,相信很多的开发者在开发调试ASP.NET网站时候都是直接通...
1.任你的名字就像穿针走线般缝进我的悲伤。 2.有个笑话叫爱情,笑得撕心裂肺,...
Go语言学习笔记一 1.初识Go语言 1.1Go简介 1.2 Go是编译型语言 1.3 编译型语言和...
CreateHtml 所有文章生成,好用资源大 第一种方法: 复制代码 代码如下: '开始HT...
Spring AOP 基于注解详解及实例代码 1.启用spring对@AspectJ注解的支持: beans x...
用isset()和empty()判断下面的变量。 $str = ''; $int = 0 ; $arr = array(); is...
FFmpeg简介 FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的...
Intro# 上次更新了 asp.net core 3.0 简单的记录了一下 swagger 的使用,那个项...
java可变参数的作用 在编写方法的过程中可能会遇见一个方法有不确定参数个数的情...
据 softpedia 报道,Windows XP 是一款超级成功的操作系统,这一点毋庸置疑,尽...