Java实现常见的排序算法---归并排序
来源:互联网 发布:微信for windows phone 编辑:程序博客网 时间:2024/04/30 00:11
/*归并排序*/
package sorts;
public class MergeSort{
public void merge(int[] data) {
int[] temp=new int[data.length];
mergeSort(data,temp,0,data.length-1);
}
private void mergeSort(int[] data,int[] temp,int l,int r){
int mid=(l+r)/2;
if(l==r) return ;
mergeSort(data,temp,l,mid);
mergeSort(data,temp,mid+1,r);
for(int i=l;i<=r;i++){
temp[i]=data[i];
}
int i1=l;
int i2=mid+1;
for(int cur=l;cur<=r;cur++){
if(i1==mid+1)
data[cur]=temp[i2++];
else if(i2>r)
data[cur]=temp[i1++];
else if(temp[i1]<temp[i2])
data[cur]=temp[i1++];
else
data[cur]=temp[i2++];
}
}
}
/*测试方法*/
package sorts;
public class TestSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] a={1,4,3,2,6,7,5,8,9,0};
MergeSort mer=new MergeSort();
mer.merge(a);
for(int i=0;i<a.length;i++)
{
System.out.print(a[i]+" ");
}
System.out.println();
}
}
- Java实现常见的排序算法---归并排序
- [排序算法]--归并排序的Java实现
- 排序算法的java实现-归并排序
- 归并排序算法的JAVA实现
- 归并排序算法的JAVA实现
- 归并排序算法的JAVA实现
- 归并排序算法的JAVA实现
- 归并排序算法的JAVA实现
- 归并排序算法的JAVA实现
- 归并排序算法的java实现
- 归并排序算法的JAVA实现 .
- 【算法】归并排序的java实现
- 归并排序算法的JAVA实现
- 归并排序算法的java实现
- 常见比较排序算法的实现(归并排序、快速排序、堆排序、选择排序、插入排序、希尔排序)
- java实现归并排序算法
- Java归并排序算法实现
- java实现归并排序算法
- CreateRemoteThread注入NOTEPAD
- test_if.sh
- 如何实现SSH断开后 进程仍然在后台运行
- Ubuntu常用命令
- getJSON与asp服务器的跨域交互
- Java实现常见的排序算法---归并排序
- test_while.sh
- android 增加新按键
- ACE小程序
- 快速排序
- Mini2440 LCD控制
- asp.net发送邮件代码
- Test
- CRC Implementation Code in C