1:有一长度为100的无序随机整型数组,且数值范围是[1,100],写一算法,判断数组中是否有存在重复值,不得嵌套循环,不得使用递归。
function(int [] a)
{
//定以一个数组用来承接需要测试的数组
int [] array = a ;
//定义一个数组测试用,思想:数组的下标和值都是上一个数组元素中的值
int [] Array = new int [101] ;
//将数组的值都复制到测试数组中
for (int i = 0;i < 100;i ++)
{
int a = array [i];
Array [a] = a;
}
//如果数组没有重复,则会填满测试数组,否则数组中将出现自动初始化的值
for (int i = i; i <101 ;i ++)
{
//判断如果数组中有自动初始的值,则数组没有被填满
if (Array [i] == 0 )
{
return false;
}
}
return true;
}
浙公网安备 33010602011771号