现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数

注1:单词之间以空格(1个或多个空格)为间隔。
注2:忽略空行或者空格行。

基本版:
统计时,区分字母大小写,且不删除指定标点符号。

进阶版:

  1. 统计前,需要从文字中删除指定标点符号!.,:*?。 注意:所谓的删除,就是用1个空格替换掉相应字符。
  2. 统计单词时需要忽略单词的大小写。

输入说明

若干行英文,最后以!!!!!为结束。

输出说明

单词数量
出现次数排名前10的单词(次数按照降序排序,如果次数相同,则按照键值的字母升序排序)及出现次数。

输入样例1

failure is probably the fortification in your poleit is like a peek your wallet as the thief when you
are thinking how to spend several hard-won leptawhen you are wondering whether new money it has laid
background because of you then at the heart of themost lax alert and most low awareness and left itgodsend failed
!!!!!

输出样例1

46
the=4
it=3
you=3
and=2
are=2
is=2
most=2
of=2
when=2
your=2

输入样例2

Failure is probably The fortification in your pole!It is like a peek your wallet as the thief when You
are thinking how to. spend several hard-won lepta.when yoU are? wondering whether new money it has laid
background Because of: yOu?, then at the heart of the
Tom say: Who is the best? No one dare to say yes.
most lax alert and! most low awareness and* left itgodsend failed
!!!!!

输出样例2

54
the=5
is=3
it=3
you=3
and=2
are=2
most=2
of=2
say=2
to=2
import java.util.*;public class Main{public static void main(String[] args) {TreeMap<String , Integer> map = new  TreeMap<String , Integer>();Scanner sc = new Scanner(System.in);String str = sc.nextLine();while(!str.equals("!!!!!")){if(str.equals("") || str == null){str = sc.nextLine();continue;}else{String arr[] = str.replaceAll("\\!|\\.|\\,|\\:|\\*|\\?", " ").split("\\s+");for(int i = 0;i < arr.length;i ++){if( arr[i] == null || arr[i].length() == 0){ // 特殊情况只有符号continue;}String b = arr[i].toLowerCase();if(map.containsKey(b)){Integer value = map.get(b);int v = (int)value;v++;map.put(b,v);}else{map.put(b,1);}                          }str = sc.nextLine();}}System.out.println(map.size());List<Map.Entry<String, Integer>> arrayList = new ArrayList<Map.Entry<String, Integer>>(map.entrySet());Collections.sort(arrayList, new Comparator<Map.Entry<String, Integer>>() {     public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {     if(o2.getValue()-o1.getValue() == 0){return o1.getKey().compareTo(o2.getKey());}   return  o2.getValue().compareTo(o1.getValue());}     });     if(arrayList.size() < 10){for(int i = 0;i < arrayList.size();i ++){System.out.println(arrayList.get(i).getKey() + "=" + arrayList.get(i).getValue());}}else{for(int i = 0;i < 10;i ++){System.out.println(arrayList.get(i).getKey() + "=" + arrayList.get(i).getValue());}}       }}

7-3 jmu-JavaPython-统计文字中的单词数量并按出现次数排序相关推荐

  1. PTA12、 统计文字中的单词数量并按出现次数排序 (10 分)

    12. 统计文字中的单词数量并按出现次数排序 (10 分) 现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行 ...

  2. 7-35 jmu-JavaPython-统计文字中的单词数量并按出现次数排序

    7-35 jmu-Java&Python-统计文字中的单词数量并按出现次数排序 分数 25 全屏浏览题目切换布局 作者 郑如滨 单位 集美大学 现在需要统计若干段文字(英文)中的单词数量,并且 ...

  3. python统计单词出现次数并排序_7-4 jmu-JavaPython-统计文字中的单词数量并按出现次数排序 (25分)...

    现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或者空格行. 基本版: 统计时,区分字母大小写,且不删除指定 ...

  4. 7-1 jmu-JavaPython-统计文字中的单词数量并按出现次数排序 (25 分)

    现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或者空格行. 基本版: 统计时,区分字母大小写,且不删除指定 ...

  5. 7-30 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分)

    7-30 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则 ...

  6. 7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出

    7-1 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (15 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将 ...

  7. Python实现统计文本中各单词数量

    Python实现统计文本中各单词数量 代码 运行结果 代码 import strings = 'not talk,not helo show me your code hello helo' for ...

  8. 统计一段文字中的单词个数并按单词的字母顺序排序后输出

    现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或 ...

  9. PTA(每日一题)7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出

    现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. **注1:**单词之间以空格(1个或多个空格)为间隔. **注2 ...

最新文章

  1. vs2012 发布网站时出现 sgen.exe 已退出 代码为 1
  2. ANSYS FLEXlm License Manager的卸载方法
  3. Redis常用命令之操作List类型
  4. hdu 6301 Distinct Values(贪心)题解
  5. restful get不传参数404_你知道什么是 Restful 风格吗?SpringMVC 带我们实现它!
  6. 一个WIFI热点的脚本思路,顺记shell知识
  7. 60-008-026-使用-命令-如何在flink中传递参数
  8. 学习Java必须避开的十大致命雷区,新手入门千万不要踩!
  9. winform 右下角弹出小窗口
  10. python os.open禁止写入缓存区_Python-设置文件缓冲类型
  11. 空格表示 java_java 正则表达式 空格怎么表示
  12. idea 报@Override is not allowed when implementing interface method的问题解决
  13. IDEA全局查找快捷键
  14. 做一篇美篇的计算机基础知识,怎么制作美篇-4个方法教你简单写出原创文章
  15. 键盘鼠标是计算机标准输入输出设备,微型计算机输入输出设备之键盘和鼠标(ppt 32页).ppt...
  16. 初创的云平台公司是否需要设立运维岗
  17. C# 索引器(Indexer) this关键字的作用
  18. linux远程kill进程
  19. 持续交付中有哪些宝贵数据?
  20. 基于DEM的坡度坡向分析

热门文章

  1. SpringMVC源码解析HandlerMethod
  2. 105.液体流加载特效
  3. vue css /deep/ 穿透
  4. 外卖订餐——吃货联盟订餐系统
  5. 关于Java中的WeakReference
  6. aptitude 命令
  7. 使用phpqrcode生成带logo二维码 并生成海报
  8. 机器学习讲堂-joblib.dump   训练模型的保存与恢复
  9. UNIX操作系统族谱 —— 发展脉络一览
  10. IT职场人,切不要一辈子靠技术生存