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

网站流量增加php 网站开发360

网站流量增加,php 网站开发360,虾皮跨境电商平台入驻,三亚门户网站一、什么是归并排序 1、整体是递归#xff0c;左边排好序右边排好序merge让整体有序 2、让其整体有序的过程里用了排外序方法 3、利用master公式来求解时间复杂度 4、当然可以用非递归实现 二、归并排序说明 1、首先有一个f函数 void f(arr, L, R) 说明#xff1a;在arr上…一、什么是归并排序 1、整体是递归左边排好序右边排好序merge让整体有序 2、让其整体有序的过程里用了排外序方法 3、利用master公式来求解时间复杂度 4、当然可以用非递归实现 二、归并排序说明 1、首先有一个f函数 void f(arr, L, R) 说明在arr上从L到R范围上让它变成有序的 2、递归调用 1先f(L, M)之间有序 2f(M1, R)之间有序 3变成整体有序 左边是2、3、5右边是056 准备一个一样长的辅助空间然后左指针指向2右指针指向0谁小拷贝谁 然后右边的指针往后移再次比较2和5谁小拷贝谁以此类推 4整体有序后再把这一块空间刷回去 三、代码 package class03;public class Code01_MergeSort {/*** 变成整体有序* param arr* param L 数组下标* param M 数组下标* param R 数组下标*/public static void merge(int[] arr, int L, int M, int R) {int [] help new int[R - L 1];int i 0;int p1 L;int p2 M 1;while (p1 M p2 R) {help[i] arr[p1] arr[p2] ? arr[p1] : arr[p2];}//要么p1越界了要么p2越界了//看左边小于等于Mwhile (p1 M) {help[i] arr[p1];}//还是右边小于等于Rwhile (p2 R) {help[i] arr[p2];}for (i 0; i help.length; i) {arr[L i] help[i];}}/*** 递归方法实现* arr[L...R]范围上变成有序* param arr*/public static void mergeSort1(int[] arr) {if (arr null || arr.length 2) {return;}process(arr, 0, arr.length - 1);}public static void process(int[] arr, int L, int R) {if (L R) { // base casereturn;}int mid L ((R - L) 1);process(arr, L, mid);process(arr, mid 1, R);merge(arr, L, mid, R);}/*** 非递归方法实现* param arr*/public static void mergeSort2(int[] arr) {if (arr null || arr.length 2) {return;}int N arr.length;int mergeSize 1;while (mergeSize N) {int L 0;while (L N) {int M L mergeSize - 1;if (M N) {break;}int R Math.min(M mergeSize, N - 1);merge(arr, L, M, R);L R 1;}if (mergeSize N / 2) { //防止溢出break;}mergeSize 1; //左移后赋值相当于乘2后赋值}}public static void main(String[] args) {int[] aaa {99, 100, 50, 70, 88, 10, 9, 35, 1, 98};int[] bbb {99, 100, 50, 70, 88, 10, 9, 35, 1, 98};mergeSort1(aaa);for (int i: aaa) {System.out.print(i );}System.out.println();mergeSort2(bbb);for (int i: bbb) {System.out.print(i );}System.out.println();} }1递归说明 2非递归说明 原理 k2 相邻两个数之间merge在一起 k4 四个数一组merge在一起 ... 一直到k到达N或者超过N 回到代码代码中mergeSize就是k外层while循环   N  10   mergeSize  1   L  0   内层while循环     M  0     R  1     merge(arr, 0, 0, 1)     L  2          M  2     R  3     merge(arr, 2, 2, 3)     L  4          M  4     R  5     merge(arr, 4, 4, 5)     L  6          ... 然后mergeSize变成2变成4... 四、归并排序复杂度 T(N)2*T(N/2)O(N^1) 根据master可知时间复杂度为O(N*logN) merge过程需要辅助数组所以额外空间复杂度为O(N) 归并排序的实质是把比较行为变成了有序信息并传递比O(N^2)的排序快
http://www.hkea.cn/news/14268187/

相关文章:

  • 加大志愿服务网站建设整体网站开发
  • 建立外贸网站旅游宣传推广方案
  • 礼品册兑换 网站建设网站备案需要那些资料
  • 开发网站如何选需要注意什么问题wordpress狮子歌歌
  • aitt网站建设中小型教育网站开发
  • jsp servlet 网站实例网站开发微信授权登录
  • 成都有哪些比较做网站比较好的哪些软件可以做网站
  • 哪些网站可以做调查赚钱云主机怎么安装网站
  • html网页设计模板免费下载seo优化包括什么
  • 怎么做家庭网站天津高端品牌网站建设
  • 免费自己建立网站互联科技 行业网站
  • 学院网站建设管理规章制度深圳光明区
  • 怎么找做网站平台公司微网站入口
  • 自己做网站上传视频专业沈阳网站建设
  • 网站备案没座机做网站一般几个步骤
  • 广州网站改版哪家好美容院顾客管理系统软件
  • 盗版小说网站建设网站服务器怎么看是哪个厂家的
  • 公司网站无法收录手表购买网站
  • 建设银行河南分行网站模板建站和定制建站
  • readme.md做网站郑州城乡建设局官网
  • 域名网站备案管理系统wordpress 未分类
  • 网站建设域名怎么选择海飞丝网站建设中面临的技术问题_并提出可行的技术解决方案
  • 重庆深蓝科技网站开发win2008r2搭建php网站
  • 旅游网站设计论文摘要企业的oa管理系统
  • 企业做网站被骗楼盘价格哪个网站做的好
  • 网站建设客户定位门户类网站如何做策划
  • 小米官方网站开发版在哪里seo小白入门教学
  • 宁德网站建设制作wordpress关注公众号可见
  • 做自媒体需要关注什么网站青海制作网站
  • 想在百度做网站自己的品牌怎么做加盟推广