算法-合并排序
来源:互联网 发布:柴鸡蛋逆袭网络剧下载 编辑:程序博客网 时间:2024/05/20 18:16
时间复杂度:o(nlog(n))
代码:
package suanfa;//合并排序public class hebingpaixu { public static void main(String[] args) { int a[]={1,9,8,7,5,4,2}; int temp[]=new int[a.length]; sort(a,temp,0,a.length-1); for(int i=0;i<a.length;i++) System.out.print(a[i]+" "); } public static void sort(int a[],int []b,int left,int right){ if(left<right){ int middle=(left+right)/2; sort(a,b,left,middle); sort(a,b,middle+1,right); merge(a,b,left,middle,right); } } public static void merge(int a[],int temp[],int left,int middle,int right){ int i=left; int j=middle+1; int k=0; while(i<=middle&&j<=right){ if(a[i]<a[j]) temp[k++]=a[i++]; else temp[k++]=a[j++]; } while(i<=middle){ temp[k++]=a[i++]; } while(j<=right){ temp[k++]=a[j++]; } for(int i1=0;i1<k;i1++){ a[i1+left]=temp[i1]; } }}
0 0
- 排序算法---合并排序
- 排序算法-合并排序
- 合并排序算法
- 合并排序算法
- 算法-----合并排序
- java 合并排序算法
- 合并排序算法
- 合并排序算法
- 合并排序算法
- 合并排序 算法实现
- c++合并排序算法
- 合并排序算法
- javascript 合并排序算法
- 合并排序算法
- 合并排序算法
- 算法之合并排序
- 合并排序算法
- 合并排序算法
- java集合框架
- 进程通信--命名管道(FIFO)
- Ubuntu安装android-ndk编译出错的处理
- 无线通信原理简述
- 237. Delete Node in a Linked List
- 算法-合并排序
- STM32 IO口的八种方式的解释
- python3学习之路(2)简单的代码结构
- 剑指offer(45)-不用加减乘除做加法
- Android 如何获取当前Activity实例对象?
- 朴素贝叶斯模型:文本分类+垃圾邮件分类
- CentOS7 minimal installation 上网
- Java千百问_08JDK详解(014)_如何编写JVMTI agent程序
- 面试题23:从上往下打印二叉树