您的位置:首页 > 其它

统计字符

2017-09-29 09:21 447 查看
今天刷了一道特别简单的题,思路正确,但是写不出来,他大爷的。

题目描述 给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符。

输入描述: 输入数据一个字符串,包括字母,数字等。

输出描述: 输出首先出现三次的那个英文字符

示例1 输入

Have you ever gone shopping and

输出

e

解题思路:

先将字符串转换为字符数组,通过循环只取字母字符,再声明一个int类型的数组用来表示每个字母出现的次数,以每个字母的ACS||值作为其对应的下标,(下标不重复就行)。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Scanner;

public class Nice {
public static void main(String[] args) throws Exception {
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
//给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符。
char[] ch=bf.readLine().toCharArray();
int[] n=new int[128];
for(int i=0;i<ch.length;i++){
if((ch[i]>='a'&&ch[i]<='z')||(ch[i]>='A'&&ch[i]<='Z')){
++n[ch[i]];
if(n[ch[i]]==3){
System.out.println(ch[i]);
break;
}
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: