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

w98免费服务器seo客服

w98免费服务器,seo客服,备案网站可以做影视站,wordpress主题支持分页个人主页:Lei宝啊 愿所有美好如期而遇 目录 归并排序递归实现 归并排序非递归实现 归并排序递归实现 图示: 代码: 先分再归并,像是后序一般。 //归并排序 void MergeSort(int* arr, int left, int right) {int* temp (int…

个人主页:Lei宝啊 

愿所有美好如期而遇


目录

归并排序递归实现

归并排序非递归实现


归并排序递归实现

图示:

代码:

先分再归并,像是后序一般。

//归并排序
void MergeSort(int* arr, int left, int right)
{int* temp = (int*)malloc(sizeof(int) * (right));if (temp == NULL){perror("malloc fail");}_MergeSort(arr, temp, left, right - 1);free(temp);
}void _MergeSort(int* arr, int* temp, int left, int right)
{if (left >= right)return;int mid = (left + right) / 2;int begin1 = left;int begin2 = mid + 1;int end1 = mid;int end2 = right;_MergeSort(arr, temp, left, mid);_MergeSort(arr, temp, mid + 1, right);int index = left;while (begin1 <= end1 && begin2 <= end2){if (arr[begin1] < arr[begin2]){temp[index++] = arr[begin1++];}else{temp[index++] = arr[begin2++];}}while (begin1 <= end1){temp[index++] = arr[begin1++];}while (begin2 <= end2){temp[index++] = arr[begin2++];}memcpy(arr + left, temp + left, sizeof(int) * (right - left + 1));
}

归并排序非递归实现

这里的非递归实现不可借助栈实现,因为返回去的时候,不能使之有序。

代码:

//归并排序非递归
void MergeSortNonR(int* arr, int n)
{int* temp = (int*)malloc(sizeof(int) * n);if (temp == NULL){perror("malloc fail");}int gap = 1;while (gap < n){		for (int i = 0; i < n; i += 2 * gap){//归并的区间int begin1 = i;			int end1 = i + gap - 1;int begin2 = i + gap;int end2 = i + gap * 2 - 1;if (begin2 > n - 1){break;}if (end2 > n - 1){end2 = n - 1;}int index = i;//每次归并从i位置开始while (begin1 <= end1 && begin2 <= end2){if (arr[begin1] < arr[begin2]){temp[index++] = arr[begin1++];}else{temp[index++] = arr[begin2++];}}while (begin1 <= end1){temp[index++] = arr[begin1++];}while (begin2 <= end2){temp[index++] = arr[begin2++];}memcpy(arr + i, temp + i, sizeof(int) * (end2 - i + 1));}gap *= 2;}free(temp);
}

时间复杂度O(n*logn),空间复杂度O(N);

http://www.ritt.cn/news/6491.html

相关文章:

  • 怎么做网站从0做到权重7宽带业务如何推广
  • 无锡做网站优化价格全国疫情最新消息今天实时
  • 国内大型php网站建设廊坊优化技巧
  • 网站开发流程图和介绍简单网页设计模板html
  • 汕头市作风建设的网站windows优化大师使用方法
  • 网站建设課程网络营销案例分析
  • 网站建设站点地图百度公司怎么样
  • 网站建设插件廊坊seo排名外包
  • 网站开发工具 哪个好二级域名分发平台
  • 赤峰北京网站建设网站seo提升
  • phpcms 笑话网站拓客团队怎么联系
  • 微信借口的网站怎么做公关公司排名
  • 杭州做网站的网络公司有哪些做网站比较好的公司有哪些
  • 顺义做网站同学网站搜索引擎推广
  • 动态网站开发技术实训报告谷歌搜索引擎下载安装
  • 网站空间买卖百度搜索一下
  • 服务器建立网站宁波seo网络推广优化价格
  • 一个内部网站如何做外网映射竞价推广思路
  • 做五金外贸哪个网站比较好网络平台推广
  • 郑州上市企业网站建设南宁seo怎么做优化团队
  • 企业网站首页设计欣赏seo工程师
  • 深圳网站制作的公司接单平台app
  • 德阳建设局网站首页百度推广怎么收费的
  • 微博网站开发与设计开题报告亚马逊关键词排名提升
  • 高端网站教建设怎么做游戏推广员
  • 网站开发需要多线程吗环球资源网站网址
  • python做网站难么商品标题优化
  • 哪有那样的网站宁波seo排名外包
  • 大庆建设中等职业技术学校网站seo门户 site
  • 佛山市网站建设哪家好seo有哪些优缺点?