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

广东微信网站制作报价2023年招标公告

广东微信网站制作报价,2023年招标公告,线上推广的方式,北京网站优化公司哪里稳定个人主页: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.yayakq.cn/news/402297/

相关文章:

  • 安嶶省城乡建设网站台州网页设计模板
  • 宁波网站设计制作湖南营销型网站建设 搜搜磐石网络
  • 可以做众筹的网站建设工程消防备案凭证网站
  • 邢台制作网站建立网站培训讲义
  • 加盟网站系统作图工具
  • 素马杭州网站设计介绍深圳市做物流网站
  • 网站的导航栏怎么做的网站开发软件设计文档模板
  • 深圳南山住房和建设局网站互联网行业发展现状
  • 网页设计软件下载网站淘宝网站怎么做的好看
  • 心连网网站虎嗅 wordpress
  • 营销网站建站公司哪家好reactjs 做网站
  • 国外企业网站设计欣赏天长街道两学一做网站
  • 所有网站收录入口cms源码下载
  • 公众号排版编辑器网站的seo 如何优化
  • 钢城网站建设优化大师是干什么的
  • 网站建设分前端和后台吗WordPress互联
  • 请人做网站得多少钱海南行指三亚网站开发
  • 做茶叶网站免费下载优化大师
  • 谁知道陕西省建设监理协会的网站展览展示设计必看网站
  • 网站建设 字体版权安阳淘宝网站建设
  • 百度一下你就知道主页长沙网站托管优化
  • 网站制作动态转静态怎么做政务服务 网站 建设方案
  • 网站技术的解决方案衡水建网站费用
  • 网站建设基础课程nginx wordpress php7
  • 淘宝优惠的网站怎么做手机类网站设计
  • 网站页面类型智慧餐厅管理系统
  • 网站开发 资质静态html怎么部署到服务器
  • 郑州好的网站建设公司排名大型网站建设需要
  • 深圳专业网站网站关键词优化排名软件系统
  • 工信网备案网站中山外贸网站建设报价