Java 如何在数组中找到最频繁的数字并将其打印出来
我有一个数组,例如:Java 如何在数组中找到最频繁的数字并将其打印出来,java,arrays,digit,Java,Arrays,Digit,我有一个数组,例如: |4758322| 10000 | 5748883 |2754331| 我需要返回数组中具有最频繁数字的num。 在本例中,该方法将返回10000。 有人能帮我吗?我被卡住了,不知道如何开始 谢谢 因为您没有提供代码。所以我也不打算写它。 尝试执行以下操作: 对于数组中的每个数字,求模10,直到其值为零。 您将有一个整数。因此,计算每个数字出现的次数 在数字上。存储最高计数。重复上述步骤 其他数字。并比较每种方法的计数。最后显示 计数最高的数字 因为您没有提供代码。所以我
|4758322| 10000 | 5748883 |2754331|
我需要返回数组中具有最频繁数字的num。
在本例中,该方法将返回10000。
有人能帮我吗?我被卡住了,不知道如何开始
谢谢 因为您没有提供代码。所以我也不打算写它。
尝试执行以下操作: 对于数组中的每个数字,求模10,直到其值为零。 您将有一个整数。因此,计算每个数字出现的次数 在数字上。存储最高计数。重复上述步骤 其他数字。并比较每种方法的计数。最后显示 计数最高的数字
因为您没有提供代码。所以我也不打算写它。
尝试执行以下操作: 对于数组中的每个数字,求模10,直到其值为零。 您将有一个整数。因此,计算每个数字出现的次数 在数字上。存储最高计数。重复上述步骤 其他数字。并比较每种方法的计数。最后显示 计数最高的数字
因为您没有提供代码。所以我也不打算写它。
尝试执行以下操作: 对于数组中的每个数字,求模10,直到其值为零。 您将有一个整数。因此,计算每个数字出现的次数 在数字上。存储最高计数。重复上述步骤 其他数字。并比较每种方法的计数。最后显示 计数最高的数字
因为您没有提供代码。所以我也不打算写它。
尝试执行以下操作: 对于数组中的每个数字,求模10,直到其值为零。 您将有一个整数。因此,计算每个数字出现的次数 在数字上。存储最高计数。重复上述步骤 其他数字。并比较每种方法的计数。最后显示 计数最高的数字
我会首先尝试解决问题的一个简单版本,然后尝试扩展它来解决整个问题 我会先从一个整数中求出数字的频率,这几乎可以解决剩下的问题,比如
public static int maxFrequency(int number){
int[] array = new int[(number)+"".length()];
int max = 0;
while(number != 0){
array[number%10] += 1
if(max < array[number%10]){
max = array[number%10];
}
number = number/10;
}
return max;
}
公共静态整数最大频率(整数){
int[]数组=新的int[(数字)+''.length();
int max=0;
while(数字!=0){
数组[编号%10]+=1
如果(最大值<数组[数目%10]){
最大值=数组[数目%10];
}
数字=数字/10;
}
返回最大值;
}
然后我将使用此方法将其扩展到数组中的所有元素,并选择最大的元素
int[] a = {4758322, 10000 , 5748883 ,2754331};
int max = 0;
int target = 0;
for(int i : a){
int maxFrequencyi = maxFrequency(i);
if(max < maxFrequencyi){
max = maxFrequencyi;
target = i;
}
}
return target;
int[]a={47583221000057488832754331};
int max=0;
int目标=0;
对于(int i:a){
int maxFrequencyi=maxFrequency(i);
如果(最大<最大频率){
max=maxFrequencyi;
目标=i;
}
}
回报目标;
我会先尝试解决问题的一个简单版本,然后尝试扩展它来解决整个问题
我会先从一个整数中求出数字的频率,这几乎可以解决剩下的问题,比如
public static int maxFrequency(int number){
int[] array = new int[(number)+"".length()];
int max = 0;
while(number != 0){
array[number%10] += 1
if(max < array[number%10]){
max = array[number%10];
}
number = number/10;
}
return max;
}
公共静态整数最大频率(整数){
int[]数组=新的int[(数字)+''.length();
int max=0;
while(数字!=0){
数组[编号%10]+=1
如果(最大值<数组[数目%10]){
最大值=数组[数目%10];
}
数字=数字/10;
}
返回最大值;
}
然后我将使用此方法将其扩展到数组中的所有元素,并选择最大的元素
int[] a = {4758322, 10000 , 5748883 ,2754331};
int max = 0;
int target = 0;
for(int i : a){
int maxFrequencyi = maxFrequency(i);
if(max < maxFrequencyi){
max = maxFrequencyi;
target = i;
}
}
return target;
int[]a={47583221000057488832754331};
int max=0;
int目标=0;
对于(int i:a){
int maxFrequencyi=maxFrequency(i);
如果(最大<最大频率){
max=maxFrequencyi;
目标=i;
}
}
回报目标;
我会先尝试解决问题的一个简单版本,然后尝试扩展它来解决整个问题
我会先从一个整数中求出数字的频率,这几乎可以解决剩下的问题,比如
public static int maxFrequency(int number){
int[] array = new int[(number)+"".length()];
int max = 0;
while(number != 0){
array[number%10] += 1
if(max < array[number%10]){
max = array[number%10];
}
number = number/10;
}
return max;
}
公共静态整数最大频率(整数){
int[]数组=新的int[(数字)+''.length();
int max=0;
while(数字!=0){
数组[编号%10]+=1
如果(最大值<数组[数目%10]){
最大值=数组[数目%10];
}
数字=数字/10;
}
返回最大值;
}
然后我将使用此方法将其扩展到数组中的所有元素,并选择最大的元素
int[] a = {4758322, 10000 , 5748883 ,2754331};
int max = 0;
int target = 0;
for(int i : a){
int maxFrequencyi = maxFrequency(i);
if(max < maxFrequencyi){
max = maxFrequencyi;
target = i;
}
}
return target;
int[]a={47583221000057488832754331};
int max=0;
int目标=0;
对于(int i:a){
int maxFrequencyi=maxFrequency(i);
如果(最大<最大频率){
max=maxFrequencyi;
目标=i;
}
}
回报目标;
我会先尝试解决问题的一个简单版本,然后尝试扩展它来解决整个问题
我会先从一个整数中求出数字的频率,这几乎可以解决剩下的问题,比如
public static int maxFrequency(int number){
int[] array = new int[(number)+"".length()];
int max = 0;
while(number != 0){
array[number%10] += 1
if(max < array[number%10]){
max = array[number%10];
}
number = number/10;
}
return max;
}
公共静态整数最大频率(整数){
int[]数组=新的int[(数字)+''.length();
int max=0;
while(数字!=0){
数组[编号%10]+=1
如果(最大值<数组[数目%10]){
最大值=数组[数目%10];
}
数字=数字/10;
}
返回最大值;
}
然后我将使用此方法将其扩展到数组中的所有元素,并选择最大的元素
int[] a = {4758322, 10000 , 5748883 ,2754331};
int max = 0;
int target = 0;
for(int i : a){
int maxFrequencyi = maxFrequency(i);
if(max < maxFrequencyi){
max = maxFrequencyi;
target = i;
}
}
return target;
int[]a={47583221000057488832754331};
int max=0;
int目标=0;
对于(int i:a){
int maxFrequencyi=maxFrequency(i);
如果(最大<最大频率){
max=maxFrequencyi;
目标=i;
}
}
回报目标;
你想给我们看一些你尝试过的代码吗?我不明白,你能提供更多的例子和解释吗