• 快速排序


    public class Test1 {
        public static void main(String[] args) {
            Integer[] arr= {70,120,10,20,50,60,30,40,980};
            Test1 test1 = new Test1();
    //        test1.maopao(arr);
            test1.kuaisu(arr, 0, arr.length-1);
            for (int i = 0; i < arr.length; i++) {
                System.out.println(arr[i]);
            }
        }


        /**
         * 快速排序,二分法
         * @param arr
         */
        public void kuaisu(Integer[] arr,int low,int length) {
            int i,j,temp,t;
    //        如果下标大于最大长度,跳出
            if(low>length) return;
            i=low;
            j=length;
    //        基准位
            temp=arr[low];
    //        循环
            while(i<j) {
                while(temp<=arr[j] && i<j) {
                    j--;
                }
                while(temp>=arr[i] && i<j) {
                    i++;
                }
                if (i<j) {
                    t=arr[j];
                    arr[j]=arr[i];
                    arr[i]=t;
                }
            }
            arr[low]=arr[i];
            arr[i]=temp;
            kuaisu(arr, low, j-1);
            kuaisu(arr, j+1, length);
        }
    }

  • 相关阅读:
    使用Dapper参数化查询(三) IN 查询
    cs窗体继承问题
    SVN使用教程总结(转载)
    celery——使用
    celery——简介及安装
    luffy——django中使用redis
    redis——redis入门(常用数据类型:l )
    redis——redis入门(二)
    redis——redis入门(常用数据类型:string hash)
    redis——redis入门(一)
  • 原文地址:https://www.cnblogs.com/nnnnmmmm/p/11663512.html
Copyright © 2020-2023  润新知