2011年2月18日
摘要: 在一组随机排列的数组中找出第k小的,这个元素称为k-th Order Statistic。能想到的最直观的算法肯定是先把这些数排序然后取第k个,时间复杂度和排序算法相同,可以是Θ(nlgn)。但它也有平均情况下时间复杂度是Θ(n)的算法,基于快速排序思想。算法:01/* 这个函数的返回值就是第j小的数 */02intpartition(intstart,intend)03{04inti,j,pivot=a[start],temp;05i=start;06j=end;0708while(i<j)09{10while(a[i]<=pivot&&i 阅读全文
posted @ 2011-02-18 09:20 steffily 阅读(1469) 评论(0) 推荐(0) 编辑