您的位置:首页 > 职场人生

面试算法_出现次数最多的字母(含大小写)

2016-03-30 14:29 441 查看
一家毕业就年薪开35w的公司面试题

input:

abcAAB

output:

aAA

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;

public class Q_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String in="abcAAB";
find(in);
}

static void find(String in){
Map<Character, Integer> map = new TreeMap<>();

for(int i=0;i<in.length();i++){
char ch=in.charAt(i);
if('a'<=ch && ch<='z'){
ch = (char) (ch - 'a'+'A');
}
if(map.containsKey(ch)){
map.put(ch, map.get(ch)+1);
}
else{
map.put(ch, 1);
}
}
int max=0;
char t = ' ';
Iterator iterator=map.keySet().iterator();
while(iterator.hasNext()){
Character character = (Character) iterator.next();
System.out.println(character+":"+map.get(character));
if(map.get(character)>max){
max = map.get(character);
t = character.charValue();
}
}
System.out.println(t);
for(int i=0;i<in.length();i++){
if(in.charAt(i)==t || in.charAt(i)==(t-'A'+'a')){
System.out.print(in.charAt(i));
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: