快排算法

    xiaoxiao2021-03-26  20

    分析:快排主要思想是先在(1).数组中找一个作为基准,拿这个基准把比它大的放一边,比它小的放在另一边;然后再把它左右俩边的重复(1)操作

    实现:(我将第一个元素作为基准)

    public static void QuickSort(int[] numbers,int a,int b){ if(a>=b) return;  int tag=numbers[a],i=a,j=b; while(i<j){ while(i<j&&numbers[j]>=tag){ j--; } if(i<j){ numbers[i]=numbers[j]; i++; } while(i<j&&numbers[i]<=tag){ i++; } if(i<j){ numbers[j]=numbers[i]; j--; } } numbers[i]=tag; QuickSort(numbers,a,i-1); QuickSort(numbers,i+1,b); }

    转载请注明原文地址: https://ju.6miu.com/read-658998.html

    最新回复(0)