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

常州网站开发手机做的兼职网站设计

常州网站开发,手机做的兼职网站设计,杨浦做网站公司,上海网站建设官方网站图解 归并排序是一种效率比较高的分治排序算法,主要分为两个步骤,分别为“分”和“并”。 分:将序列不断二分,直到每个子序列只有一个元素为止。 并:将相邻两个子序列进行合并,合并时比较两个子序列的元素…

 图解

归并排序是一种效率比较高的分治排序算法,主要分为两个步骤,分别为“分”和“并”。

  1. 分:将序列不断二分,直到每个子序列只有一个元素为止。

  2. 并:将相邻两个子序列进行合并,合并时比较两个子序列的元素大小,按照从小到大的顺序放入新的序列中。

是一种分治算法,在每轮排序中将待排序数组分成两部分,递归地将每个子数组排序,最后将两个排好序的子数组合并成一个有序数组。

具体实现如下:

  1. 将待排序数组分成两个子数组,每个子数组包含原数组的一半元素,如果原数组长度为奇数,则一个子数组比另一个多一个元素。

  2. 递归地对每个子数组进行归并排序,直到子数组长度为1。

  3. 合并两个排好序的子数组。将两个子数组中的最小元素依次比较,将较小的元素放入新数组中,直到其中一个子数组的元素全部被放入新数组中,此时将另一个子数组中的剩余元素直接放到新数组的尾部。

  4. 返回合并后的有序数组。

归并排序的时间复杂度为O(nlogn),空间复杂度为O(n)。它是一种稳定的排序算法,适用于各种数据类型的排序。

以下是Java实现归并排序的代码:

public class MergeSort {public static void mergeSort(int[] arr, int left, int right) {if (left >= right) {return;}int mid = (left + right) / 2;mergeSort(arr, left, mid);mergeSort(arr, mid + 1, right);merge(arr, left, mid, right);}private static void merge(int[] arr, int left, int mid, int right) {// 创建一个临时数组存放排序后的元素int[] temp = new int[right - left + 1];int i = left;int j = mid + 1;int k = 0;while (i <= mid && j <= right) {if (arr[i] <= arr[j]) {temp[k++] = arr[i++];} else {temp[k++] = arr[j++];}}while (i <= mid) {temp[k++] = arr[i++];}while (j <= right) {temp[k++] = arr[j++];}// 将排序后的元素拷贝回原数组for (int p = 0; p < temp.length; p++) {arr[left + p] = temp[p];}}public static void main(String[] args) {int[] arr = {5, 3, 8, 4, 2, 1, 10, 7};mergeSort(arr, 0, arr.length - 1);for (int i : arr) {System.out.print(i + " ");}}
}

输出结果为:1 2 3 4 5 7 8 10

http://www.yayakq.cn/news/116548/

相关文章:

  • 城乡建设部网站网站建设网站推广优化
  • 做公司网站需要花钱吗济南住房与城乡建设局网站
  • 云网站7china如何做网络营销推广 咨询时代达信(深圳)科技有限公司
  • 外贸网站建站贵州省安顺市网站建设
  • 当前业界主流的网站建设wordpress首页文章摘录
  • 多语言企业网站建设怎样开物流网站
  • 网站建设公司华网天下买赠两年网站开发与维护的内容
  • 查数据的网站有哪些传统行业网站建设
  • 东莞网站优化怎样wordpress 读取文章
  • wordpress网站无法登陆企业网站源码千博
  • 飞色网站商城怎么做wordpress使用不同的页头
  • 网站推广排名机构烹饪考试试卷哪个网站可以做
  • 网站开发开发需求文档模板桂林市人口
  • 网站 技术支持房地产资讯
  • 开发定制app铜川网站seo
  • dw做网站图片运用阳江房产网0662
  • 网站建设编码dw网页设计素材包下载
  • 千户微建站平台中国建设银行官网站纪念币
  • 校园网站wordpress如何重新安装
  • 哪里有配音的网站wordpress主题拖拽
  • 旅游网站开发意义和背景深圳建设花了多少钱
  • 全州建设完小网站wordpress查看主题
  • 赣州网站建设平台东莞画册设计
  • 在哪里自己建设网站吸引客流的25个技巧
  • 网站建设的步骤教程下载做旅游网站能成功
  • 快站app百合网 网站 开发
  • 网关高性能 网站建设双语网站代码
  • 做电路设计的兼职网站编程语言
  • 网站自适应手机青岛高端网站制作公司
  • 2008iis7怎么搭建网站大型电商平台有哪些