「频率排序java」频率排序英语

博主:adminadmin 2022-11-30 15:28:09 64

今天给各位分享频率排序java的知识,其中也会对频率排序英语进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

百度搜索出来的答案是按时间按频率排序?能否设计排序选项?

1,txt文件是什么格式你没说明白, 是一行一个单词,还是空格/tab隔开;

2,按出现频率,具体什么频率呢。。。

不过我可以给你几个建议。读取txt文件用BufferedReader是最好的,他可以一次读取一行。

BufferedReader br = new BufferedReader(new InputStreamReader(new File("d:/*.txt")));

然后就是br.readLine(); 一行一行读取了

统计频率我也不清楚什么频率;你需要把问题描述清楚,可以直接email告诉我,我再帮你: sawen21@gmail.com

import java.io.BufferedReader;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

import java.util.Iterator;

import java.util.Map;

import java.util.StringTokenizer;

import java.util.TreeMap;

/**

* @author a href="mailto: sawen21@gmail.com"sawen21/a

*

*/

public class WordStatistics {

/**

* @param args

* Write a program that reads words from a text file and displays all

* the words and their occurrences in ascending alphabetical order.

* The text file is passed as a command-line argument.

*

*

* results: a 3

all 2

alphabetical 1

and 2

argument 1

as 1

ascending 1

command-line 1

display 1

displays 1

file 3

from 1

in 1

is 1

occurrences 1

order 1

passed 1

program 1

reads 1

text 2

that 1

the 3

their 1

words 2

Write 1

*

*

*/

public static void main(String[] args) {

if(args.length==0)throw new IllegalArgumentException("file name is required!");

File file = new File(args[0]);

//如果大小写字母敏感 排序 只要把String.CASE_INSENSITIVE_ORDER 去掉即可;

MapString,Integer words = new TreeMapString,Integer(String.CASE_INSENSITIVE_ORDER);

try {

BufferedReader br = new BufferedReader(new FileReader(file));

String str = br.readLine();

while(str!=null str.length()0){

StringTokenizer st = new StringTokenizer(str," ");

while(st.hasMoreTokens()){

String word = st.nextToken();

if(words.containsKey(word)){//if map already contains word

int wordCount = words.get(word);

words.put(word, wordCount+1);

}else{

words.put(word, 1);

}

}

str = br.readLine();

}

} catch (FileNotFoundException e) {

System.out.println("file does not exist!");

} catch (IOException e) {

e.printStackTrace();

}

IteratorString iter = words.keySet().iterator();

while(iter.hasNext()){

String word = iter.next();

System.out.println(word +" " + words.get(word));

}

}

}

Java 统计单词个数并按照出现次数进行排序

public static void main(String[] args) {

// TODO Auto-generated method stub

String str = "I am a student";

String[] arr = str.split(" ");

System.out.println("共"+arr.length+"个单词");

for(String item:arr) System.out.println(item);

}

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela

JAVA语言输出数组中出现频率高的数例如[1,1,2,3,3]输出1和3

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Set;

import javax.swing.JOptionPane;

public class Test88 {

public static void main(String[] args) {

int[] ss = { 1,3,2,5,2,5,7};

Map map = new HashMap();

for (int i = 0; i ss.length; i++) {

int count = 0;

for (int j = 0; j ss.length; j++) {

if (ss[i] == (ss[j])) {

count = count + 1;

}

}

// 为了不打印重复的,放入map中去掉重复的

map.put(ss[i], count);

}

// 遍历map,打印包含的数字和个数

Set key = map.keySet();

int k = key.size();

int ii[] = new int[k];// 存放出现次数最多的

k = 0;

int temp = 0;// 比较的时候的中间量

int temp2 = 0;

for (Iterator iterator = key.iterator(); iterator.hasNext();) {

int name = Integer.parseInt(iterator.next().toString());

int count2 = Integer.parseInt(map.get(name).toString());

if (temp count2) {

temp = count2;

}

System.out.println(name + "出现 " + count2 + " 次");

}

for (Iterator iterator = key.iterator(); iterator.hasNext();) {

int name = Integer.parseInt(iterator.next().toString());

int count2 = Integer.parseInt(map.get(name).toString());

if (temp == count2) {

ii[k]=name;

k++;

}

}

System.out.print("出现最多的是:");

for (int i = 0; i ii.length; i++) {

if (ii[i] != 0) {

System.out.print(ii[i] + " ");

}

}

}

}

数组的数字可以随意填写,其中第一次for的遍历是得到出现的数字最多的次数,第2次for的遍历是和这个次数比较,因为已经是最多的了,所以只要和这个相等,那个元素也就是出现最多的了,即使有出现次数同样最多的也可以保存

JAVA编程单词频率排序输出 望高手指教

建议你使用ECPLISE或者JBUILDER来编写JAVA程序,这样很好修改的,那里出错了,就会有提示,不会你这样很难修改

简单的JAVA程序

import java.util.Scanner;

public class JavaFun

{

 public static void main(String[] args)

 {   

          int cardNum=0;

         

          Scanner in=new Scanner(System.in);//新建一个对象用来接收键盘输入

          System.out.println("请输入四位数卡号:");

          String readLine = in.nextLine();  //读取键盘输入的一行(以回车换行为结束输入)

          cardNum=Integer.parseInt(readLine);//readLine是一个字符串,把他转成整数

         

          if(cardNum/1000+(cardNum%1000)/100+(cardNum%100)/10+cardNum%10  24)

          {

               System.out.println("恭喜你中奖了");

          }

          else

          {

               System.out.println("抱歉,你没有中奖");

          }

   

  }

}

运行结果:

java输入任意数量的数字,统计每个数字出现的次数,求出最大值,并从大到小排序

import java.util.HashMap;

import java.util.Map;

import java.util.Scanner;

public class Demo {

    public static void main(String[] args) {

        // 用来统计每个数字出现的次数

        MapInteger, Integer map = new HashMap();

        System.out.println("请输入任意个数字(输入-1结束)");

        Scanner scanner = new Scanner(System.in);

        int input;

        while ((input = scanner.nextInt()) != -1) {

            Integer count = map.get(input);

            map.put(input, count == null ? 1 : count + 1);

        }

        int size = map.size();

        int[] num = new int[size]; // 存储输入数字

        int[] count = new int[size]; // 存储对应数字的次数

        int i = 0;

        for (Map.EntryInteger, Integer entry : map.entrySet()) {

            num[i] = entry.getKey();

            count[i] = entry.getValue();

            i++;

        }

        // 根据出现次数排序

        for (int j = 0; j  size - 1; j++) {

            for (int k = j; k  size; k++) {

                if (count[j]  count[k]) {

                    int temp = count[j];

                    count[j] = count[k];

                    count[k] = temp;

                    // 数字数组也同步交换

                    temp = num[j];

                    num[j] = num[k];

                    num[k] = temp;

                }

            }

        }

        // 输入

        System.out.println("数字\t次数");

        for (int j = 0; j  size; j++) {

            System.out.println(num[j] + "\t" + count[j]);

        }

    }

}

频率排序java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于频率排序英语、频率排序java的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-30,除非注明,否则均为首码项目网原创文章,转载请注明出处。