首页 > 代码库 > Top-K问题之部分划分法
Top-K问题之部分划分法
def Partition(arr): sa=[] sb=[] index=random.randint(0,len(arr)-1) p=arr[index] for i in arr: sa.append(i) if i>p else sb.append(i) return (sa,sb) def TopK(arr,k): if k<=0: return [] if len(arr)<=k: return arr (sa,sb)=Partition(arr) return TopK(sa,k)+TopK(sb,k-len(sa))
Top-K问题之部分划分法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。