归并排序
来源:互联网 发布:文档电子目录软件 编辑:程序博客网 时间:2024/06/10 16:47
package sdibt;public class MergeSort { /** * 将数组二分 * 将排好的两部分合并 */ public static void MSort(int[] arr,int left,int right){ if(left<right){ int mid=(left+right)/2; MSort(arr, left, mid); MSort(arr, mid+1, right); Merge(arr,left,right,mid); /* System.out.print("----"); for (int i : arr) { System.out.print(i+" "); } System.out.println();*/ } }/** * 合并两个有序数组 * @param arr * @param left * @param right * @param mid */ public static void Merge(int[] arr, int left, int right, int mid) { int i=left; int j=mid+1; int t=0; int[] temp=new int[arr.length]; while(i<=mid&&j<=right){ if(arr[i]<arr[j]){ temp[t++]=arr[i++]; } else{ temp[t++]=arr[j++]; } } while(i<=mid){ temp[t++]=arr[i++]; } while(j<=right){ temp[t++]=arr[j++]; } t=0; while(left<=right){ arr[left++]=temp[t++]; } } public static void main(String[] args) { int[] arr={10,8,0,99,10,3,2}; MSort(arr, 0, arr.length-1); for (int i : arr) { System.out.print(i+" "); } System.out.println(); }}
阅读全文
0 0
- 归并排序-归并排序
- 归并和归并排序
- 归并与归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 排序::归并
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- python学习之路-函数
- dede织梦系统自定义表单在线报名微信支付功能
- python 3.x 结巴(jieba)分词基础知识
- Webpack使用
- 数据库索引原理理解0
- 归并排序
- 基于jQuery简单实用的Tabs选项卡插件
- ps入门级案例集锦
- JQuery 动画实例:下拉列表框展开收起
- 在ubuntu16.04中安装python3.6.3和pip3.6
- utc date 转 本地时间(java)
- 【开发工具】推荐一款超快的安卓模拟器-genymotion
- css中元素不可见的几种办法
- [C]判断素数