Re:请教中位数算法问题

[复制链接]
查看11 | 回复0 | 2021-1-29 05:14:33 | 显示全部楼层 |阅读模式
问题是给一堆数找中位数么?这个在平均情况下应该是线性的:
//返回A的第m小数functionfoo(A[1..n],m)a:=A[1];像快排那样按比a和比a大将A[1..n]分成两边,最后A[1..k-1]a=A[k]A[k+1..n]ifk=mresult:=aelseifkmresult:=foo(A[k+1..n],m-k);elseresult:=foo(A[1..k-1],k);endfunction
breezedeus (静风) 在 ta 的帖子中提到:上次参加百度的笔试,那道中位数算法题一直没很好的想法。大家是怎么做的啊,有线性的算法么?多谢了。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行