Java 倒入文章显示前n个单词频率
package com_1; import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner; class Word //定义出一个单词类
{
String value; //具体的单词
int geshu; //出现的个数
Word next; //将单词链起来
public Word(String value,int geshu) //带参构造函数
{
this.value=value;
this.geshu=geshu;
next=null;
}
public Word() //空构造函数
{
this.value="";
this.geshu=0;
next=null;
}
}
public class Shuru {
public static void main(String args[]) throws IOException //主函数
{ Scanner dc = new Scanner(System.in);
Word word=new Word(); //单词的链头
Word lian,xin;
String str="";
FileReader f=new FileReader("F:\\eclipse-workspace\\com_1\\src\\1.txt"); //读取英文文件
char[] c=new char[1]; //每次读取一个字母
int b=0;
boolean exist=false; //判断单词是否存在于 word 链中
while((b=f.read(c))!=-1) //每次读取一个字母直到最后
{
//如果字符为 换行、空格、单引号、双引号、逗号、句号 则为一个单词的结束及另一个单词的开始
if(String.valueOf(c).equals("\r")||String.valueOf(c).equals("\n")||String.valueOf(c).equals(" ")||String.valueOf(c).equals(",")||String.valueOf(c).equals(".")||String.valueOf(c).equals("\"")||String.valueOf(c).equals("'"))
{
lian=word;
while(lian!=null)
{
if(lian.value.equalsIgnoreCase(str)) //如果单词在单词链中存在,则单词个数++
{
lian.geshu++;exist=true;break;
}
else
{
lian=lian.next;
}
}
if(exist==false) //如果不存在,则在单词链中添加
{
xin=new Word(str,1);
xin.next=word.next;
word.next=xin;
str="";
}
else
{
exist=false;
str="";
}
}
else //单词
{
str+=String.valueOf(c);
}
}
System.out.println("请输入你查找的前n个值");
int a;
a=dc.nextInt();
// 循环a次
for(int i=1;i<=a;i++)
{
xin=new Word("",0);
lian=word.next;
//找到单词链中个数最多的
while(lian!=null)
{
if(lian.geshu>xin.geshu)
{
xin=lian;
}
lian=lian.next;
}
//输出单词链中个数最多的
System.out.println("弟"+i+"个 :"+xin.value+"个数:"+xin.geshu);
lian=word;
//删除单词链中单词个数最多的
while(lian.next!=null)
{
if(lian.next.value.equalsIgnoreCase(xin.value))
{
lian.next=lian.next.next;
break;
}
lian=lian.next;
}
}
}
}
Java 倒入文章显示前n个单词频率的更多相关文章
- 只显示 前100个字 java 实现截取字符串!使用! <c:if test="${fn:length(onebeans.info)>100 }">${ fn:substri
博客 文章 只显示 前100个字 java 实现截取字符串!使用! <c:if test="${fn:length(onebeans.info)>100 }">$ ...
- 用java实现输出英文小说飘中出现次数最多的前N个单词(附:使用文件读写)
本文参考于:https://blog.csdn.net/u014204432/article/details/40348839 一.题目 输出单个文件(<飘> 英文版)中的前 N 个最常出 ...
- sort +awk+uniq 统计文件中出现次数最多的前10个单词
实例cat logt.log|sort -s -t '-' -k1n |awk '{print $1;}'|uniq -c|sort -k1nr|head -100 统计文件中出现次数最多的前10个单 ...
- N个任务掌握java系列之统计一篇文章中单词出现的次数
问题:统计一篇文章中单词出现的次数 思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中. (2)定义一个Map,key是字符串类型,保存单词:valu ...
- 统计一段文章的单词频率,取出频率最高的5个单词和个数(python)
练习题:统计一段英语文章的单词频率,取出频率最高的5个单词和个数(用python实现) 先全部转为小写再判定 lower() 怎么判定单词? 1 不是字母的特殊字符作为分隔符分割字符串 (避免特殊字符 ...
- WP8学习笔记:如何在页面显示前自动转向到其他页面
在本次修练开始之前,我们除了预设的 MainPage页面外,也另外新增了一个 Login页面,如下图示: MainPage.xaml页面长这样 Login.xaml页面长这样 因为我们的需求是要求使用 ...
- wordpress如何添加自增变量(第一篇文章显示摘要后面的只显示标题)
有时我们在调用文章列表的时候需要在前面添加序号看起来比较整齐,如何实现呢?要想精确的控制每篇文章,我们先在循环前定义一个变量 $ashu_i=1 来计数,变量名随便,然后每循环一次,$ashu_i加1 ...
- 转载:Linux命令经典面试题:统计文件中出现次数最多的前10个单词
1.使用linux命令或者shell实现:文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词 主要考察对sort.uniq命令的使用,相关解释 ...
- MySQL百分比显示和显示前百分之几的方法
前几天一个朋友让我帮忙写的,随手记录一下,感觉难度也不大,就是写的时候遇到一些问题.优化方便做得不太好.有好的优化方法欢迎分享!(数据库在文章结尾) 要求 1)查询所有时间内,所有产品销售金额占比,按 ...
随机推荐
- ntpq -p命令详解
ntpq用来监视ntpd操作,ntpq -p查询网络中的NTP服务器,同时显示客户端和每个服务器的关系 [root@localhost ~]# ntpq -p remote ...
- 记录 shell学习过程(5)continue break
1.continue ;i<;i++)) do ];then continue fi echo $i done # ./continue.sh12346789 2.break ;i<;i+ ...
- qml-main.cpp中的两种启动Qt Quick App模式
现有两种启动Qt Quick App 模式: QQmlApplicationEngine搭配Window. QQuickView搭配Item. qt默认使用第一种方法. QQmlApplicati ...
- JS高级---总结继承
总结继承 面向对象特性: 封装, 继承,多态 继承, 类与类之间的关系, 面向对象的语言的继承是为了多态服务的 js不是面向对象的语言, 但是可以模拟面向对象,模拟继承,为了节省内存 继承: ...
- c# 技巧
1 遍历属性 Type t = typeof(Colors); PropertyInfo[] pInfo = t.GetProperties(); foreach (PropertyInfo pi i ...
- Apache Kafka(十)Partitions与Replication Factor 调整准则
Partitions与Replication Factor调整准则 Partition 数目与Replication Factor是在创建一个topic时非常重要的两个参数,这两个参数的取值会直接影响 ...
- servlet中的“/”代表当前项目,html中的“/”代表当前服务器
servlet中重定向或请求转发的路径如果用“/”开头,代表当前项目下的路径,浏览器转发这条路径时会自动加上当前项目的路径前缀,如果这个路径不是以“/”开头,那么代表这个路径和当前所在servlet的 ...
- 【C 语言】一元二次方程
求一元二次方程:ax2+bx+c=0 的根. 输入三个实数a,b,c的值,且a不等于0. 数学基础:一元二次方程 只含有一个未知数(一元),并且未知数项的最高次数是2(二次)的整式方程叫做一元二次方程 ...
- HTML5学习(3)元素
HTML5元素周期表 详情见:http://www.xuanfengge.com/funny/html5/element/
- 每天进步一点点------ORCAD Capture CIS 快捷键
ORCAD Capture CIS 快捷键 I: 放大O: 缩小C: 以光标所指为新的窗口显示中心 W: 画线On/OffP: 快速放置元件R: 元件旋转90°H: 元件 ...