华为西安2015实习生机试题基础题--------求输入的五个数字中频率最高的,输出数字和次数
2014-04-30 19:10
323 查看
package test;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
int f = 0;
int g = 0;
int h = 0;
int k = 0;
int l= 0;
Scanner s=new Scanner(System.in);
String input=s.nextLine();
char[]arr=input.toCharArray(); //转换为数组
//统计各个数字频率
for (int i = 0; i < arr.length; i++) {
switch(arr[i]){
case '0':a++;break;
case '1':b++;break;
case '2':c++;break;
case '3':d++;break;
case '4':e++;break;
case '5':f++;break;
case '6':g++;break;
case '7':h++;break;
case '8':k++;break;
case '9':l++;break;
}
}
int[]arr2={a,b,c,d,e,f,g,h,k,l};
int max = arr2[0];
int index=0;
for(int j=0;j<arr2.length;j++){
if(arr2[j]>max){
max=arr2[j];
index=j;
}
}
System.out.println("出现次数最多的是:"+index);
System.out.println("出现的次数是:"+max);
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
int f = 0;
int g = 0;
int h = 0;
int k = 0;
int l= 0;
Scanner s=new Scanner(System.in);
String input=s.nextLine();
char[]arr=input.toCharArray(); //转换为数组
//统计各个数字频率
for (int i = 0; i < arr.length; i++) {
switch(arr[i]){
case '0':a++;break;
case '1':b++;break;
case '2':c++;break;
case '3':d++;break;
case '4':e++;break;
case '5':f++;break;
case '6':g++;break;
case '7':h++;break;
case '8':k++;break;
case '9':l++;break;
}
}
int[]arr2={a,b,c,d,e,f,g,h,k,l};
int max = arr2[0];
int index=0;
for(int j=0;j<arr2.length;j++){
if(arr2[j]>max){
max=arr2[j];
index=j;
}
}
System.out.println("出现次数最多的是:"+index);
System.out.println("出现的次数是:"+max);
}
}
相关文章推荐
- 将一个字符串中每个单词逆序输出(2014年西安华为实习生机试第二题)
- 2015输入一个字符串以#结尾,则输出此字符串中连续出现最长的数字串及其开始的下标;
- 16年华为春季实习生机试题
- 黑马程序员之WinForm编程基础学习笔记:在多行文本框中输入多行"姓名=成绩"格式的数据,要求输出成绩最高的学生的姓名和成绩。
- 华为OJ平台试题 —— 数组:输入n个整数,输出其中最小的k个
- Linux作业(三)-shell统计某文章中出现频率最高的N个单词并排序输出出现次数
- 华为OJ试题:输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数
- 华为机试题:输入一组大于等于0的整数,从小到大排序输出,输出有连续数时,只输出连续数的最小和最大值
- 输入一个字符串,统计其出现频率最高的字母以及对应的次数
- 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。
- 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在
- 2017华为实习生机试题--任务调度
- 华为机试题:输入一组大于等于0的整数,从小到大排序输出,输出有连续数时,只输出连续数的最小和最大值
- 一个一维整形数组,若干个数字,统计数组中不同的数字出现的次数,并按照出现频率从小到大排序输出,相同频率按数字大小排序输出
- 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在
- 22.数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果
- 华为机试题:输入一组大于等于0的整数,从小到大排序输出,输出有连续数时,只输出连续数的最小和最大值
- 第13周-项目1-小玩文件-用键盘输入文件名,统计输出文件中每个字母、数字字符出现的次数
- 华为2014年机试题【输入1--50个数字,求出最小数和最大数的和】
- 华为机试题:输入一组大于等于0的整数,从小到大排序输出,输出有连续数时,只输出连续数的最小和最大值