如果这个数是有范围的比如是int的范围,那就可以二分数的范围来查找。      1.那么可以假设用 (int最大值+int最小值)/2,作为假设中位数mid。      2.对于k个数组,均去查找mid所对应的位置,然后计算所有数组中比mid小和比mid大的数的个数lcont,rcount,因为是有序的,这个过程只要 klogn (n为数组长度)。      3.如果lcount==rcount ,那么mid就是真正的中位数       4.否则继续二分范围,比如lcount大,就让mid往左二分。 总的时间复杂度应该是log(数的范围)*k*logn  。log(数的范围) 一般不大,int的话就32
点赞 7

相关推荐

02-12 17:30
已编辑
字节跳动_实习生(实习员工)
要怎么办呢牛:我觉得大厂日常实习最大的意义就是给自己背书,一个好公司的实习就像一个好学历似的,能够给自己增加一个标签,让别人觉得你可以。(至于真正实习干了啥,这个感觉并不太重要)。当然一家之言,仅供参考。另外,楼主已经很强了,实习毕业双双拿下,已经领先好多好多人了,羡慕啊
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客网
牛客企业服务