每天一种算法-归并排序
来源:互联网 发布:阿里云客服能拿多少钱 编辑:程序博客网 时间:2024/05/29 15:05
Java实现
package bigo;public class merge { static void merge(int src[], int left,int right,int mid){ int i=left,j=mid; int m=mid+1,n=right; int k=0; int help[] = new int[src.length]; while(i<=j && m<=n){ if(src[i] <= src[m]) help[k++] = src[i++]; if(src[i] > src[m]) help[k++] = src[m++]; } while(i<=j){ help[k++] = src[i++]; } while(m<=n){ help[k++] = src[m++]; } for(i=0;i<k;i++){ src[left+i] = help[i]; } } static void merge_sort(int src[], int left, int right) { if(left >= right) return; int mid = left+ (right-left)/2; merge_sort(src,left,mid); merge_sort(src,mid+1,right); merge(src,left,right,mid); } public static void main(String[] args) { int src[] = {9,8,7,6,5,4,3,3,2,2,1,0,0,-1}; merge_sort(src,0,src.length-1); for (int i = 0; i < src.length; i++) { System.out.println(src[i]); } }}
0 0
- 每天一种算法-归并排序
- 每天一种算法--快速排序
- 每天一种算法--选择排序
- 每天一种算法 - 冒泡排序
- 每天一种算法-插入排序
- 每天一种算法-希尔排序
- 每天学一点算法-归并排序算法
- 一种常用的归并排序算法--归并排序
- 数组归并排序算法的一种实现
- 每天学习算法系列—内部排序之归并排序和快速排序
- 一种数据库应用中常用的排序算法--两阶段多路归并排序算法
- 一种数据库应用中常用的排序算法--两阶段多路归并排序算法
- 排序算法-归并排序
- 排序算法------归并排序
- 排序算法-归并排序
- 排序算法---归并排序
- 排序算法--归并排序
- 排序算法--归并排序
- myeclipse打开文件选择程序
- Android 控件 下拉刷新 android-uitra-pull-to-refresh
- 【PPT制作工具】超实用!有哪些鲜为人知却好用到爆的PPT辅助工具?
- Maven之pom.xml
- 对拍程序的写法
- 每天一种算法-归并排序
- 解决IOS浏览器中文乱码问题
- 请求报文之GET请求报文和POST请求报文
- 下拉菜单(二) PopupWindow 封装实现
- Android Service基础详讲
- WEB前端为什么这么火,太原UI设计师问你了解web前端吗?
- 活动代码页更改
- 安卓 edittext禁止表情图片的输入
- 基于Zookeeper的服务注册与发现