题目:有一个小白程序员,写了一个只能对5个数字进行排序的函数,现在有25个不重复的数字,请问小白同学最少调用几次该函数,可以找出其中最大的三个数?
A.5
B.6
C.7
D.8
答案:C
解析:第一步:25人分为5组调用,分别排序,调用5次
第二步:取出5组中的最大数,排序,调用1次
第三步:将第二步排序中最大的三组取出,假设为A,B,C,从第二步已知A[1]>B[1]>C[1],不需要再比较(最少调用多少次)
选A[2]、A[3]、B[1]、B[2]、C[1]比较。调用1次所以,总共需要调用:5+1+1=7次