25匹赛马,没有秒表,五条赛道。如何用最少的比赛选出最快的前三匹马?
通用解法:
1.M匹马N条赛道,找出第一名需要log(n) M次
2.找出第二匹,只需要比较每一轮输给第一匹的
3.找出第三匹,只需要比较每一轮输给第二匹的。。。依次类推
4.2,3两个阶段如果数量少于N,可以进行合并。如果每个阶段数量大于N,则需要另外一次拆分。
25匹赛马,没有秒表,五条赛道。如何用最少的比赛选出最快的前三匹马?
通用解法:
1.M匹马N条赛道,找出第一名需要log(n) M次
2.找出第二匹,只需要比较每一轮输给第一匹的
3.找出第三匹,只需要比较每一轮输给第二匹的。。。依次类推
4.2,3两个阶段如果数量少于N,可以进行合并。如果每个阶段数量大于N,则需要另外一次拆分。