用JAVA实现找出输入字符串中的出现次数最多的字符及其次数;
//通过Map 类实现,通过键值对的方式,可以将输入的字符串的每一个字符,作为键,每个字符出现的次数作为值:如下:
public class Find {
public static void main(String[] args){
String scan=new Scanner(System.in).nextLine();//获取键盘上输入的字符串;
Map<Character,Integer> map = new HashMap<Character,Integer>();//新建一个HashMap对象;
//通过FOR循环,把String的键值存放到map
for(int i=0;i<scan.length();i++){
char temp=scan.charAt(i);//通过循环,找到字符串的每一位字符并存入到temp中;
if(map.containsKey(temp)){//如果map里面有temp这个字符
map.put(temp, map.get(temp)+1);//把temp的值加1;
}else{//如果map里面没有temp这个字符,
map.put(temp, 1);//把temp的值设为1;
}
}
/*Collection c = map.entrySet();
Iterator it = c.iterator();
Map.Entry<Character, Integer> entry;
while(it.hasNext()){
entry = (Map.Entry<Character, Integer>) it.next();
}
*/
int maxnum = Collections.max(map.values());//调用Collections类的max方法,获取map的值的集合;并找出最大的那个值;
Set<Character> set = new HashSet<Character>();//建立一个set对象
for(Map.Entry<Character, Integer> entry1:map.entrySet()){ //通过集合的循环,把map的值放到entry1里,通过entry1找到值最大的maxnum的key;
if(entry1.getValue()==maxnum){
set.add(entry1.getKey());
}
}
System.out.println("出现次数最多的字母为:"+set+" 最多出现次数为"+maxnum);
}
}
用JAVA实现找出输入字符串中的出现次数最多的字符及其次数;的更多相关文章
- 给定一个英文字符串,请编写一个PHP函数找出这个字符串中首先出现三次的那个英文字符(需要区分大小写),并返回
给定一个英文字符串,请编写一个PHP函数找出这个字符串中首先出现三次的那个英文字符(需要区分大小写),并返回 //统计字符串中出现的字符的出现次数 public function strNum(){ ...
- js判断一个字符串中出现次数最多的字符及次数
最近面试总是刷到这个题,然后第一次的话思路很乱,这个是我个人思路 for循环里两个 if 判断还可以优化 var maxLength = 0; var maxStr = ''; var count = ...
- LeetCode练习3 找出一个字符串中最大不重复子字符串的长度
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc&qu ...
- python字符串面试题:找出一个字符串中第一个字母和最后一个字符是第一次重复,中间没有重复且最长的子串
1.给出任意一个字符串,打印一个最长子串字符串及其长度,如果有相同长度的子字符串,都要一起打印出来,该子字符串满足以下条件, 第一个字母和最后一个字符是第一次重复 这个子字符串的中间字母没有重复 这个 ...
- 找出A字符串中出现B字符串的起始位置
/** * 找出B出现在A中的起始位置 * @param A * @param lenA * @param B * @param lenB * @date 2016-10-7 * @author sh ...
- java一个字符串中出现次数最多的字符以及次数
学习了别人的方法,觉得挺巧妙的.就是每次取出字符串的第一个字符,将字符串中与第一个字符相同的字符全部删除掉,然后通过计算删除前后字符串的长度来确定该字符在字符串中出现的次数,最终比较出出现最多次的字符 ...
- 请找出"aaaabbcccdddd"字符串中出现最多的字母
function getCount(str) { for(var code=32;code<128;code++){ var mych=String.fromCharCode(code); va ...
- js 计算字符串中出现次数最多的字符及其次数
方法一: var str="sdfseresssssdssdfsa"; var arr=[]; var max=0; var maxk; for(var i=0;i<str. ...
- C/C+面试题一:找出字符串中出现最多的字符和次数,时间复杂度小于O(n^2)
已知字符串"aabbbcddddeeffffghijklmnopqrst"编程找出出现最多的字符和次数,要求时间复杂度小于O(n^2) /********************* ...
随机推荐
- bat脚本清理15天前文件
@echo offset max_days=15 set log_path="D:\backup_new" forfiles /p %log_path% /s /m *.* /d ...
- Gamma阶段第七次scrum meeting
每日任务内容 队员 昨日完成任务 明日要完成的任务 张圆宁 #91 用户体验与优化https://github.com/rRetr0Git/rateMyCourse/issues/91(持续完成) # ...
- windows,office激活工具推荐
微软的操作系统windows,办公软件office,都需要付费.今天,蒟蒻菌带来一部软件,可以激活上述软件,那就是: heu_kms_activator_v19.5.1 二话不说,立即使用: 可以根据 ...
- 【转帖】 PM RD QA OP
From 百度知道 一.PM: Product Manager,产品经理,又称品牌经理(Brand Manager).举凡产品从创意到上市,所有相关的研发.调研.生产.编预算.广告.促销活动等等,都由 ...
- delegate、Action、Func的用法
委托的特点 委托类似于 C++ 函数指针,但它们是类型安全的. 委托允许将方法作为参数进行传递. 委托可用于定义回调方法. 委托可以链接在一起. delegate的用法 delegate void B ...
- Mysql之索引(六)
1.思考 在图书馆是怎么找到一本书的? 一般的应用系统对比数据库的读写比例在10:1左右(即有10次查询有1次写操作),而且插入操作和更新操作很少出现性能问题. 遇到最多,最复杂的还是一些复杂的查询操 ...
- SpringBoot构建RESTful API
1.RESTful介绍 RESTful是一种软件架构风格! RESTful架构风格规定,数据的元操作,即CRUD(create, read, update和delete,即数据的增删查改)操作,分别对 ...
- iOS测试中发现一个textview控制,使用clear()无法清除文字
iOS测试中发现一个textview控制,使用clear()无法清除
- Windows中常用工具
护眼软件 f.lux https://justgetflux.com/ Typora https://www.typora.io/ Markdown工具,小巧,方便. Snipaste https:/ ...
- 单词diamaund钻石diamaund英文
Diamond Di"a*mond (?; 277), n. [OE. diamaund, the hardest iron, steel, diamond, Gr. . Perh. the ...