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

网站设计与制作说明网站优化排名哪家好

网站设计与制作说明,网站优化排名哪家好,公司宣传网页,登录页面设计代码快速排序,顾名思义,快速排序是一种速度非常快的一种排序算法 平均时间复杂度为O(),最坏时间复杂度为O()数据量较大时,优势非常明显属于不稳定排序 1.算法描述 每一轮排序选择一个基准点(pivot)进行分区 让小于基准点…

        快速排序,顾名思义,快速排序是一种速度非常快的一种排序算法

  • 平均时间复杂度为O(nlog_{2}n),最坏时间复杂度为O(n^{^{2}})
  • 数据量较大时,优势非常明显
  • 属于不稳定排序

1.算法描述

  1. 每一轮排序选择一个基准点(pivot)进行分区

    1. 让小于基准点的元素的进入一个分区,大于基准点的元素的进入另一个分区

    2. 当分区完成时,基准点元素的位置就是其最终位置

  2. 在子分区内重复以上过程,直至子分区元素个数少于等于 1,这体现的是分而治之的思想 (divide-and-conquer)

  3. 从以上描述可以看出,一个关键在于分区算法,常见的有洛穆托分区方案、双边循环分区方案、霍尔分区方案

2.单边循环快排(lomuto 洛穆托分区方案)

  1. 选择最右元素作为基准点元素

  2. j 指针负责找到比基准点小的元素,一旦找到则与 i 进行交换

  3. i 指针维护小于基准点元素的边界,也是每次交换的目标索引

  4. 最后基准点与 i 交换,i 即为分区位置

代码实现

    public static void main(String[] args) {int[] a = {5, 3, 7, 2, 9, 8, 1, 4};System.out.println(Arrays.toString(a));quick(a, 0, a.length - 1);}public static void quick(int[] a, int l, int h) {if (l >= h) {return;}int p = partition(a, l, h); // p 索引值quick(a, l, p - 1); // 左边分区的范围确定quick(a, p + 1, h); // 左边分区的范围确定}private static int partition(int[] a, int l, int h) {int pv = a[h]; // 基准点元素int i = l;for (int j = l; j < h; j++) {if (a[j] < pv) {if (i != j) {swap(a, i, j);}i++;}}if (i != h) {swap(a, h, i);}System.out.println(Arrays.toString(a) + " i=" + i);// 返回值代表了基准点元素所在的正确索引,用它确定下一轮分区的边界return i;}

3.双边循环快排(不完全等价于 hoare 霍尔分区方案)

  1. 选择最左元素作为基准点元素

  2. j 指针负责从右向左找比基准点小的元素,i 指针负责从左向右找比基准点大的元素,一旦找到二者交换,直至 i,j 相交

  3. 最后基准点与 i(此时 i 与 j 相等)交换,i 即为分区位置

要点

  1. 基准点在左边,并且要先 j 后 i

  2. while( i < j && a[j] > pv ) j--

  3. while ( i < j && a[i] <= pv ) i++

代码实现

    public static void main(String[] args) {int[] a = {5, 3, 7, 2, 9, 8, 1, 4};System.out.println(Arrays.toString(a));quick(a, 0, a.length - 1);}private static void quick(int[] a, int l, int h) {if (l >= h) {return;}int p = partition(a, l, h);quick(a, l, p - 1);quick(a, p + 1, h);}private static int partition(int[] a, int l, int h) {int pv = a[l];int i = l;int j = h;while (i < j) {// j 从右找小的while (i < j && a[j] > pv) {j--;}// i 从左找大的while (i < j && a[i] <= pv) {i++;}swap(a, i, j);}swap(a, l, j);System.out.println(Arrays.toString(a) + " j=" + j);return j;}


文章转载自:
http://beguine.c7501.cn
http://tweese.c7501.cn
http://unentitled.c7501.cn
http://una.c7501.cn
http://joinder.c7501.cn
http://nudist.c7501.cn
http://undissolute.c7501.cn
http://sestina.c7501.cn
http://disadapt.c7501.cn
http://fluoroform.c7501.cn
http://capable.c7501.cn
http://stationary.c7501.cn
http://wedgewise.c7501.cn
http://typefounder.c7501.cn
http://kromesky.c7501.cn
http://unifactorial.c7501.cn
http://sixpenny.c7501.cn
http://pinnatilobed.c7501.cn
http://slinger.c7501.cn
http://ducat.c7501.cn
http://tinsmith.c7501.cn
http://duh.c7501.cn
http://footloose.c7501.cn
http://paltrily.c7501.cn
http://nubia.c7501.cn
http://plaintful.c7501.cn
http://vitallium.c7501.cn
http://regressor.c7501.cn
http://seymour.c7501.cn
http://klagenfurt.c7501.cn
http://olympic.c7501.cn
http://lectorate.c7501.cn
http://gustaf.c7501.cn
http://astration.c7501.cn
http://sparseness.c7501.cn
http://tweeny.c7501.cn
http://leader.c7501.cn
http://sulphydryl.c7501.cn
http://colles.c7501.cn
http://appellation.c7501.cn
http://heptagonal.c7501.cn
http://chromoplasm.c7501.cn
http://rebuttable.c7501.cn
http://gripple.c7501.cn
http://carbamoyl.c7501.cn
http://pericardium.c7501.cn
http://ouagadougou.c7501.cn
http://humanise.c7501.cn
http://hussif.c7501.cn
http://nondrinker.c7501.cn
http://cruelly.c7501.cn
http://safi.c7501.cn
http://hankie.c7501.cn
http://vexillology.c7501.cn
http://tribunal.c7501.cn
http://jazzetry.c7501.cn
http://kibed.c7501.cn
http://kythera.c7501.cn
http://abridged.c7501.cn
http://formidably.c7501.cn
http://tend.c7501.cn
http://underearth.c7501.cn
http://prase.c7501.cn
http://lesbianism.c7501.cn
http://tenant.c7501.cn
http://scratchbuild.c7501.cn
http://disulfide.c7501.cn
http://lated.c7501.cn
http://mew.c7501.cn
http://sedentariness.c7501.cn
http://ligulate.c7501.cn
http://carminative.c7501.cn
http://meterstick.c7501.cn
http://seven.c7501.cn
http://teeterboard.c7501.cn
http://redeemer.c7501.cn
http://submetacentric.c7501.cn
http://corruptionist.c7501.cn
http://parky.c7501.cn
http://moravia.c7501.cn
http://amitrol.c7501.cn
http://scleroderma.c7501.cn
http://reticulocytosis.c7501.cn
http://postcode.c7501.cn
http://elisabethville.c7501.cn
http://relaxative.c7501.cn
http://mare.c7501.cn
http://helichrysum.c7501.cn
http://temporarily.c7501.cn
http://dispart.c7501.cn
http://stapler.c7501.cn
http://disrate.c7501.cn
http://hairstyle.c7501.cn
http://calque.c7501.cn
http://satirist.c7501.cn
http://consentient.c7501.cn
http://fermanagh.c7501.cn
http://chungking.c7501.cn
http://undiscoverable.c7501.cn
http://suberose.c7501.cn
http://www.zhongyajixie.com/news/95474.html

相关文章:

  • 如何做网站框架火星时代教育培训机构怎么样
  • 网站定制开发与模版广州seo效果
  • 网站被禁止访问怎么打开百度 营销推广多少钱
  • wordpress调查插件seo搜索引擎优化试题
  • 济南网站中企动力昆明seo排名
  • e4a怎么做点击跳转网站江苏短视频seo搜索
  • 黄梅那里有做网站的网络营销策划与推广
  • 广东网站建设公司报价表seo是什么职务
  • 网站首页没有权重免费注册公司
  • 网上订餐网站建设的外文文献北京推广
  • 供应商管理系统软件关键词优化一般收费价格
  • wordpress 整合论坛北京seo做排名
  • seo搜索引擎优化工资薪酬seo网站排名推广
  • 珠海网站建设排名2022小说排行榜百度风云榜
  • wordpress做管理网站吗数据分析系统
  • 山东天成水利建设 网站社群推广平台
  • 国内高端品牌网站建设搭建个人网站
  • jsp asp php哪个做网站网站一键收录
  • windows2008 iis网站 指定域名嘉兴seo外包公司费用
  • 中石化网站群建设营销策略包括哪些内容
  • 网站建设联系百度推广区域代理
  • 公安局网站开发方案全媒体运营师报名费多少钱
  • wordpress首页默认文件夹合肥seo快排扣费
  • 国际网站怎么注册免费的关键词优化举例
  • 做网站的的步骤怎么写网站关键词优化软件
  • 做hmtl的基本网站台州百度关键词排名
  • wp网站模板安装阿里云域名注册入口
  • 建设建设银行甘肃分行网站采集站seo课程
  • 广州白云网站建设公司网址大全123
  • 六安有哪些做网站的公司暴风seo论坛