首页 > 其他分享 >飘 查询字母频率并计算 频数

飘 查询字母频率并计算 频数

时间:2023-06-11 09:23:30浏览次数:30  
标签:count 频数 ++ 字母 查询 break case int zimu

package 文本字母使用频率;
import java.io.*;
public class Letter1 {
public static void main(String args[]) {
try {
char shu[] = new char[1000000];
char zimu[] = new char[52];
int j=0;
int count[]=new int[52];
String pathname="D:\\dd.txt";
File filename=new File(pathname);
InputStreamReader reader=new InputStreamReader(new FileInputStream(filename));
BufferedReader br=new BufferedReader(reader);
String line[]=new String[100];;
for(int i=0;i<line.length;i++){
line[i]=br.readLine();

}

br.close();
int k=0;
while(line[k]!=null) {
for(int i=0;i<line[k].length();i++) {
shu[j]=line[k].charAt(i);
j++;
}
k++;
}
for(int i=0;i<shu.length;i++) {
switch(shu[i]) {
case 'a':zimu[0]='a';count[0]++;break;
case 'b':zimu[1]='b';count[1]++;break;
case 'c':zimu[2]='c';count[2]++;break;
case 'd':zimu[3]='d';count[3]++;break;
case 'e':zimu[4]='e';count[4]++;break;
case 'f':zimu[5]='f';count[5]++;break;
case 'g':zimu[6]='g';count[6]++;break;
case 'h':zimu[7]='h';count[7]++;break;
case 'i':zimu[8]='i';count[8]++;break;
case 'j':zimu[9]='j';count[9]++;break;
case 'k':zimu[10]='k';count[10]++;break;
case 'l':zimu[11]='l';count[11]++;break;
case 'm':zimu[12]='m';count[12]++;break;
case 'n':zimu[13]='n';count[13]++;break;
case 'o':zimu[14]='o';count[14]++;break;
case 'p':zimu[15]='p';count[15]++;break;
case 'q':zimu[16]='q';count[16]++;break;
case 'r':zimu[17]='r';count[17]++;break;
case 's':zimu[18]='s';count[18]++;break;
case 't':zimu[19]='t';count[19]++;break;
case 'u':zimu[20]='u';count[20]++;break;
case 'v':zimu[21]='v';count[21]++;break;
case 'w':zimu[22]='w';count[22]++;break;
case 'x':zimu[23]='x';count[23]++;break;
case 'y':zimu[24]='y';count[24]++;break;
case 'z':zimu[25]='z';count[25]++;break;
case 'A':zimu[26]='A';count[26]++;break;
case 'B':zimu[27]='B';count[27]++;break;
case 'C':zimu[28]='C';count[28]++;break;
case 'D':zimu[29]='D';count[29]++;break;
case 'E':zimu[30]='E';count[30]++;break;
case 'F':zimu[31]='F';count[31]++;break;
case 'G':zimu[32]='G';count[32]++;break;
case 'H':zimu[33]='H';count[33]++;break;
case 'I':zimu[34]='I';count[34]++;break;
case 'J':zimu[35]='G';count[35]++;break;
case 'K':zimu[36]='K';count[36]++;break;
case 'L':zimu[37]='L';count[37]++;break;
case 'M':zimu[38]='M';count[38]++;break;
case 'N':zimu[39]='N';count[39]++;break;
case 'O':zimu[40]='O';count[40]++;break;
case 'P':zimu[41]='P';count[41]++;break;
case 'Q':zimu[42]='Q';count[42]++;break;
case 'R':zimu[43]='R';count[43]++;break;
case 'S':zimu[44]='S';count[44]++;break;
case 'T':zimu[45]='T';count[45]++;break;
case 'U':zimu[46]='U';count[46]++;break;
case 'V':zimu[47]='V';count[47]++;break;
case 'W':zimu[48]='W';count[48]++;break;
case 'X':zimu[49]='X';count[49]++;break;
case 'Y':zimu[50]='Y';count[50]++;break;
case 'Z':zimu[51]='Z';count[51]++;
}
}
int ci=0;
int sum=0;
System.out.println("短文中各字母出现情况统计如下:");
for(int i=0;i<52;i++)
{
if(count[i]!=0) {
ci++;
sum+=count[i];
}
}

ci=0;
for(int i=0;i<52;i++)
{
if(count[i]!=0) {
ci++;
System.out.println(count[i]);
double a=(double) ((Math.round(count[i]*100)/100.0)/sum)*100;
double b= (double) (Math.round(a*100)/100.0);
System.out.println(ci+".字母"+zimu[i]+"的出现次数是:"+b);
}
}
System.out.println("字母共计:"+sum+"个");
}catch (Exception e) {
e.printStackTrace();
}
}

}

标签:count,频数,++,字母,查询,break,case,int,zimu
From: https://www.cnblogs.com/ruipengli/p/17472491.html

相关文章

  • 03地铁查询系统
    地铁查询系统2023.6.101、优化返回两个站点之间最短路径功能:成为一个类,进行单元测试。2、生成遍历车站类:要求尽可能快地遍历地铁的所有车站呢(只用经过一次,不用下车,就算经过车站)。  连接数据库:packagecom.example.underground; importjava.sql.Connection;importja......
  • SpringBoot进阶教程(七十六)多维度排序查询
    在项目中经常能遇到,需要对某些数据集合进行多维度排序的需求。对于集合多条件排序解决方案也有很多,今天我们就介绍一种,思路大致是设置一个分值的集合,这个分值是按照需求来设定大小的,再根据分值的大小对集合排序。v需求背景我们来模拟一个需求,现在需要查询一个用户列表,该列表......
  • ALEXA排名代表什么?网站ALEXA排名怎么查询?
    ALEXA排名是根据一个站点的流量数据来列出的排名,排名越靠前,说明该网站的流量越大,被访问的次数也越多。 ......
  • 使用clickhouse和mysql查询时间对比
    业务场景,对于数据量过大的数据统计,跑脚本会很吃力先建立一个clickhouse的mysql引擎表关联本地mysql数据表,以下这个表会自动同步mysql主表数据CREATETABLEtest_table(idUInt32,messageString,contentString,remarkString,order_idString,user_idUInt......
  • Python操作Excel文件中多WorkSheet模拟数据库内连接查询
    严格意义上来讲,是可以把Excel文件看作数据库的,C#通过OLEDB.net就可以使用SQL语句操作Excel文件中的数据。本文代码使用Python扩展库openpyxl操作Excel文件中多个WorkSheet中的数据,模拟了数据库的内连接。假设Excel文件名为data.xlsx,其中第一个WorkSheet数据如下:第二个WorkSheet数据......
  • 力扣---1170. 比较字符串最小字母出现频次
    定义一个函数 f(s),统计 s 中(按字典序比较)最小字母的出现频次,其中s 是一个非空字符串。例如,若 s="dcce",那么 f(s)=2,因为字典序最小字母是 "c",它出现了 2次。现在,给你两个字符串数组待查表 queries 和词汇表 words。对于每次查询 queries[i],需统计words中......
  • 分页查询和条件分页查询
    分页查询分析:分析文档要求查看前端传递给后台的参数分析参数进行编码后台返回给前端的数据思路浏览器->Controller层->Service层->Mapper层->数据库设置分页拦截器@ConfigurationpublicclassMybatisPlusConfig{@BeanpublicMybati......
  • 2023.6.10 比较字符串最小字母出现频次
    首先按照题意把f(str)这个函数实现出来。可以考虑用哈希表+sort来实现。然后根据题目的数据范围,一个字符串最长为2000,可以知道,\(f(str)\in[1,2000]\)。所以可以考虑用前缀和来处理,定义一个长度为2001的数组s,用来作为前缀和数组,\(s[i]\)表示f值小于等于i的字符串个数。每一......
  • EXCEL如何实现输入指定ID查询对应的信息
    要求:在第2行输入ID按enter键后查询出第4行的信息。步骤:(1)首先将第2行单元格的属性【保护】中取消【锁定】,因为在要在此行输入需要查询的ID,在锁定工作表的情况下,要保障此行是可写的。(备注:第2行需调整为文本格式) (2)本次的实验数据只有三个条目(ID:0201,0202,0203)将这三行数据放在工......
  • 地铁查询
    packagecom.example.subway1;importandroid.view.View;importandroid.widget.EditText;importandroid.widget.TextView;importandroidx.appcompat.app.AppCompatActivity;importandroid.os.Bundle;importdatabase.DBHelper;importjava.util.ArrayList;impor......