zoukankan      html  css  js  c++  java
  • [ 原创 ] 快排序

    private static void quickSort(int[] arr, int low, int high) {
    
        if (low < high) {
            // 找寻基准数据的正确索引
            int index = getpivot(arr, low, high);
    
            // 进行迭代对index之前和之后的数组进行相同的操作使整个数组变成有序
            //quickSort(arr, 0, index - 1); 之前的版本,这种姿势有很大的性能问题,谢谢大家的建议
            quickSort(arr, low, index - 1);
            quickSort(arr, index + 1, high);
        }
    
    }
    
    
    /*快速排序 运用递归*/
    private static int getpivot(int[] nums,int low,int high){
        int pivot=nums[low];
        while (low<high){
            while(low<high&&nums[high]>=pivot){
                --high;
            }
            nums[low]=nums[high];
            while(low<high&&nums[low]<=pivot){
                ++low;
            }
            nums[high]=nums[low];
        }
        nums[low]=pivot;
        return low;
    }
    
            quickSort(nums,0,nums.length-1);
    //      冒泡排序后的数组为:
            for (int i : nums) {
                System.out.println(i);
            }
    生活不容易 所以必须得牛逼
  • 相关阅读:
    链路追踪
    Zuul网关
    MyBatis批量插入
    自定义组件使用v-model
    正则表达式入门
    博客园主题1【备份】
    关于我
    input输入框内容规范正则总结
    实例003:完全平方数
    python基础day5dict
  • 原文地址:https://www.cnblogs.com/ILoke-Yang/p/14470781.html
Copyright © 2011-2022 走看看