MergeSort分治实现代码(java)
来源:互联网 发布:李世宏dota2 知乎 编辑:程序博客网 时间:2024/06/05 23:53
package coretext;public class MergeSort { public static void main(String[] args) { int []arr = {2,5,3,6,8,4,9,1}; MergeText a =new MergeText(); int [] array =a.MS(arr, 8); for(int i=0;i<8;i++) { System.out.println(array[i]); } }}class MergeText{ //归并排序 public int[] MS(int A[],int n) { MSort(A,A,0,n-1); return A; } //把一个数组分解成两个分段 public void MSort(int A[],int B[],int s,int t){ if(s==t) { B[s]=A[s]; } else { int n; n=(s+t)/2; int [] C= new int[100]; MSort(A,C,s,n); MSort(A,C,n+1,t); merge(C,B,s,n,t); } } //把两个分段合并成一个数组 public void merge(int A[],int B[],int i,int m,int n) { int j,k; //k即是用来遍历A的又是来标记B for(j=m+1,k=i;i<=m && j<=n;k++) { if(A[i]<A[j]) B[k]=A[i++]; else B[k]=A[j++]; } if(i<=m) { while(i<=m) B[k++]=A[i++]; } if(j<=n) { while(j<=n) B[k++]=A[j++]; } }}
测试结果为:
12345689.
阅读全文
0 0
- MergeSort分治实现代码(java)
- mergeSort代码实现
- MergeSort(归并排序)算法Java实现
- 归并排序(MergeSort)Java实现
- Java实现算法归并排序(MergeSort)
- Java 归并排序(MergeSort)算法实现
- mergeSort java实现
- 归并排序 MergeSort Java代码
- 第一讲,整数划分 JAVA 代码(分治实现之一)
- 分治法求解MergeSort
- Java 归并排序(MergeSort)
- Java 归并排序(MergeSort)
- 分治法——归并排序(MergeSort)
- 归并排序(Mergesort)之Java实现
- 归并排序(Mergesort)之Java实现
- 归并排序(Mergesort)之Java实现
- MergeSort(Java)
- MergeSort Java
- 云计算建立标准才能给创业者公平机会
- linux系统下安装chrome
- 经验:《王者荣耀》技术总监分享背后技术
- VS2013搭建OpenGL环境
- axios 中文文档 翻译
- MergeSort分治实现代码(java)
- java下对excel文件的上传
- Python学习[01]
- Datatable 函数
- 转载自http://www.cnblogs.com/whgk/p/6074930.html 本文hibernate教程
- oracle 触发器
- 马云纽约演讲全文:再不改革教育,年轻人都要失业
- 【安全牛学习笔记】SQLMAP自动注入-INHECTION、DETECTION、TECHNIQUES、FINGERPRINT
- 录音机和录像机的输入通路SPELayer