gpt4 book ai didi

java - 如何计算数字在 .txt 文件中出现的次数

转载 作者:行者123 更新时间:2023-11-29 08:08:36 24 4
gpt4 key购买 nike

早上好

我正在做一些 Java 练习,偶然发现了这个问题。我有一个包含多个数字的 .txt 文件,每行一个。练习的目标是查看哪些数字等于 10^0, ... , 10^n 直到达到 n。然后,我必须在 .txt 中写下每个 then 出现的次数。所以我有一个文件:

1100100100101个1

我需要写:

1 - 103 - 13 - 100

我可以读取文件,检查然后编号然后打印。我只是想不出如何制作计数器而不是保持正确。有帮助吗?

这是一段代码:

// TODO - Count how many time a number appears.
public static void numberOfTimes (BufferedReader in, BufferedWriter out, int n) throws IOException {

String s;
int i;
int counter = 0;

while ((s = in.readLine()) != null) {
i = Integer.parseInt(s);
for (int j = 0; j <= n; j++) {
if (i == Math.pow(10, j)) {
counter++;
out.write(Integer.toString(counter) + " " + Integer.toString(i) + "\n");
}
}
}
}

最佳答案

由于需要跟踪多个计数,因此单个整数计数器显然是不够的。

一种可能是使用 Map<Integer,Integer> 对于计数。由于这是家庭作业,我把它留给你来弄清楚细节。

另一种可能性是使用计数数组,并使用 log10(i)作为数组的索引。换句话说,10^k 的计数将存储在 k - 数组中的第一个位置。 提示:在您的代码中,您已经在间接计算 log10(i) .

关于java - 如何计算数字在 .txt 文件中出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9533225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com