+ -
当前位置:首页 → 问答吧 → 求助一道难题

求助一道难题

时间:2011-08-04

来源:互联网

有若干个有理数(大约有10000个),现在要在最短的时间内从这些数里找到2个数a、b,使得a是b的两倍(已知满足题意的数是存在的且唯一)。请问应该怎样做?

作者: mayuqiang2012   发布时间: 2011-08-04

排序,nlogn

从左到右,对每个b, 二分搜索2b 
nlogn

其实还可以再诱惑, 1W个数其实也不多,这样应该够了
时间复杂度是nlogn

作者: starboy520   发布时间: 2011-08-04

不是很难呀,排序或者Hash都可以的。

作者: litaoye   发布时间: 2011-08-04