快速排序

来源:互联网 发布:保温隔热材料知乎 编辑:程序博客网 时间:2024/05/18 03:32
</pre><p>关于为什么叫做快速排序,我也不是特别看得懂,只是且记住这种方快速的方式罢了</p><pre name="code" class="java">package com.mercurylake.test;public class QuickkkSort {/** * 快速排序讲道理就也是递归, * 首先把起始位置作为基准值 * 从两边遍历数组,另一部分大于基准值,一部分小于基准值,然后用递归的方法对数组两部分分别进行排序 */static int getMiddle(int[] arr,int begin,int end){int temp=arr[begin];while(begin<end){while(begin<end&&arr[end]>=temp)end--;arr[begin]=arr[end];while(begin<end&&arr[begin]<=temp)begin++;arr[end]=arr[begin];arr[begin]=temp;}return begin;}static void sort(int[] arr,int begin,int end){if(begin<end){int middle=getMiddle(arr,begin,end);sort(arr,begin,middle);sort(arr,middle+1,end);}}public static void main(String[] args) {int[] nums={1,4,7,3,5,9,8};sort(nums,0,6);for(int i:nums){System.out.println(i);}}}


0 0
原创粉丝点击