• 归并排序+java实现


    import java.util.Arrays;
    
    public class MergeSort {
        
        public static void merge(int[] a,int low,int mid,int high) {
            int i,j,k;
            int[] b=new int[a.length];
            for(k=low;k<=high;k++) b[k]=a[k];
            for(i=low,j=mid+1,k=i;i<=mid&&j<=high;k++) {
                if(b[i]<=b[j]) 
                    a[k]=b[i++];
                else 
                    a[k]=b[j++];
            }
            while(i<=mid) a[k++]=b[i++];
            while(j<=high) a[k++]=b[j++];
        }
        
        public static void mergeSort(int[] a,int low,int high) {
            if(low<high) {
                int mid=(low+high)/2;       //注意!括号 !!(low+high)
                mergeSort(a,low,mid);
                mergeSort(a,mid+1,high);
                merge(a,low,mid,high);
            }
        }
        
        public static void mergeSort(int[] a) {
            int low=0;
            int high=a.length-1;            //注意!要-1!!
            mergeSort(a,low,high);
        }
        
        public static void main(String[] args) {
            int[] a= {12,32,24,99,54,76,48};
            mergeSort(a);
            System.out.println(Arrays.toString(a));
        }
    }
  • 相关阅读:
    搜索1009
    搜索1004
    Java文件操作
    搜索1007
    连接查询
    SQL学习——数据类型
    SQL学习——基本语法
    <转载>GIS数据下载网站大全
    DOM查询练习
    day09【继承、super、this、抽象类】
  • 原文地址:https://www.cnblogs.com/heyboom/p/8990747.html
Copyright © 2020-2023  润新知