为什么bufferedReader比Java中的Scanner类高效?

看看以下问题,无论您为此编写解决方案的效率如何,使用Scanner类都会导致超时。

问题:

您给了一个具有元素的数组。现在,对于给定的查询,您提供了一个整数,并且您要找到最小总和,该总和是数组中所有值小于查询中提供的给定整数的元素的总和。

输入格式:

第一行:一个整数,表示数组元素的数量。 第二行:用空格分隔的整数表示数组元素。 第三行:表示查询数量的整数。 对于每个查询:新行包含一个整数

输出格式: 对于每个查询,请在新行中打印一个最小总和的整数。

只需使用Buffered Reader而不是Scanner classBuffered Writer而不是System.out.print,就可以使此代码快两倍,并且所有测试用例都可以轻松通过,这是为什么在此背后?

a65758872 回答:为什么bufferedReader比Java中的Scanner类高效?

BufferedReader比Scanner显着更快,因为它具有比Scanner更大的缓冲内存。您可以看到两个in this discussion之间的区别。

本文链接:https://www.f2er.com/2472086.html

大家都在问