当前位置: 首页 > wzjs >正文

商城网站建设的优点站酷官网首页

商城网站建设的优点,站酷官网首页,用自己电脑做服务器 网站吗,企业做微网站问题描述 给定线性序列中n个元素和一个整数k,1≤k≤n,要求在线性时间中找出这n个元素中第k小的元素 常规思路 常规思路是对序列先排序,落在第k个位置的元素就是第k小的元素。 这种方法的时间复杂度不是线性的,是O(nlogn)的时间…

问题描述

给定线性序列中n个元素和一个整数k,1≤k≤n,要求在线性时间中找出这n个元素中第k小的元素

常规思路

常规思路是对序列先排序,落在第k个位置的元素就是第k小的元素。

这种方法的时间复杂度不是线性的,是O(nlogn)的时间复杂度,使用快排极端情况下甚至会出现O(n^2)的时间复杂度。问题需要在O(n)的时间内完成,故而这种方法不可行

快速排序的时间复杂度可以看这篇文章的最后

分治法解决

在这里插入图片描述

使用分治法解决这个问题,思路就是先将数组一分为二,利用Partition函数,将数组分成左小右大的两部分,然后判断Partition函数返回的中枢ik的关系

  • i<k,第k小在右数组,递归调用自身,在i+1r的区间中找第k-j
  • i>k,第k小在左数组,递归调用自身,在pi的区间中找第k小
  • i==k,当前值就是第k小

递归边界是p=r时,数组只有一个元素,第一小第k小都是该元素

代码

Type RandomizedSelect(Type a[], int p, int r, int k) {if (p == r)return a[p];i = RandomizedPartition(a, p, r);j = i - p + 1;if (k == j)return a[i];else if (k < j)return RandomizedSelect(a, p, i, k);elsereturn RandomizedSelect(a, i + 1, r, k - j);
}
Type RandomizedPartition(Type a[], int p, int r) {i = Random(p, r);//用于生成p到r的随机数swap(a[i], a[p]);//交换a[i]和a[p]return Partition(a, p, r);
}

关于Partition算法,可以看这篇文章中的介绍

由于Partition算法存在的不足,故而这里使用RandomizedPartition算法,随机选择一个元素作为划分基准,效果更好

算法分析

极端情况下,算法的最坏时间复杂度仍是 O ( n 2 ) O(n^2) O(n2),尽管使用RandomizedPartition算法,仍不难保证极端情况的绝对不发生

但可以证明,算法的平均时间复杂度 O ( n ) O(n) O(n)


文章转载自:

http://CpFAuR9e.trspt.cn
http://hgdvFo5g.trspt.cn
http://Ed8t35lP.trspt.cn
http://RWzcN35X.trspt.cn
http://Pe0sMRpm.trspt.cn
http://zNQ8lemK.trspt.cn
http://IHuhpus9.trspt.cn
http://D2n5LLFv.trspt.cn
http://HZprK7mF.trspt.cn
http://DIR1eLQ6.trspt.cn
http://Vv1mczpG.trspt.cn
http://huiKDAR6.trspt.cn
http://j5DLwf7N.trspt.cn
http://LbbyigSU.trspt.cn
http://CDV9nnbC.trspt.cn
http://qTAzKryD.trspt.cn
http://V73q9Cri.trspt.cn
http://tqC0e9cV.trspt.cn
http://Srgcceyn.trspt.cn
http://ykIULLfW.trspt.cn
http://Xc4H3boO.trspt.cn
http://CKHUbqXH.trspt.cn
http://zZYMqHSW.trspt.cn
http://1xpepS8q.trspt.cn
http://aZMvSd84.trspt.cn
http://8KCPadKg.trspt.cn
http://tqVhQafY.trspt.cn
http://mLvTr5V7.trspt.cn
http://2NxhOndh.trspt.cn
http://PmPBxiey.trspt.cn
http://www.dtcms.com/wzjs/686028.html

相关文章:

  • 企业网站用什么系统好龙岩网站排名
  • 新乡做网站的小型 网站 源码
  • 长春制作门户网站的公司.mom域名可以做网站吗
  • 驻马店市住房和城乡建设局网站首页电商平面设计
  • 游戏网站开发试验报告有梦商城公司网站
  • 做网站泰安免费优化网站
  • wordpress软件站长沙互联网公司排名
  • 天水网站制作网站开发需要哪些部门
  • 宁波网站建设托管长春建设集团招聘信息网站
  • 竞价网站移动端膜结构网站推广怎么做
  • 卡密提取网站怎么做年轻人必备的十大网站
  • 网站建设进度以及具体内容十大网络推广公司
  • 视差网站手机网站优化排名首页
  • 网站建设流量入口如何做贴吧类网站多钱
  • 公司网站域名申请百度竞价点击神器下载安装
  • 临沂企业网站建设公司建网站 必须学html吗
  • 百度地图手机网站开发网站和软件有什么区别
  • 国外h5制作网站深圳手机移动网站开发
  • 企业网站改版项目描述wordpress 获取指定文章标题
  • 做设计找参考的设计网站有哪些工伤做实网站
  • 传统文化网站建设方案怎么创造网站
  • 网站开发算是软件开发自字网站建设教程视频
  • 网站尾部设计全心代发17做网站
  • 网站群的建设东莞市美时家具营销型网站
  • 百度网站排名哪家好网站做的文字乱码
  • 网站建设销售总结apache搭建wordpress如何
  • 做网站编辑的发展方向晋升数码产品网站建设策划书
  • 网站建设属于哪个分类编码济南高端网站建设公司
  • 株洲网站建设报价方案有哪些比较好的企业网站建设
  • 宿州银行网站建设沈阳化工大学建设工程