2016-09-17 20 views
-1

有没有办法在不使用数组或排序的情况下在.txt文件中查找第二大/第二小的数字?我能够通过使用while(file.nextInt())来找到最大/最小的数字......但是,那是我完成的地方。正在搜索文件中第二大的数字

+3

http://stackoverflow.com/questions/18673676/the-largest-second-number – Tunaki

+0

请不要加元信息你的问题。你不需要添加“谢谢”,请阅读[问]。 – Tunaki

回答

0

如果你做我认为你做的事(也就是读所有的数字并保持大/小),为什么不保持最大/最小和第二个?

例如:

int bigger = 0 // or whatever you want to initialize it 
int second = 0 // the same 

while(file.hasNextInt()){ 
    int newNumber = file.nextInt(); 
    if (newNumber > bigger){ 
     second = bigger; 
     bigger = newNumber; 
    } else{ 
     if (newNumber > second){ 
      second = newNumber; 
     } 
    } 
} 

// at the end you have the biggest and the second one. 

会为你工作? 当然这个例子是关于找到第二个更大的数字,你可以修改它以轻松找到第二个更小的数字。

这是没有办法的办法,以这种最好的方法......