/*
快速排序:
首先找到左边比中间大的,然后找到右边比中间小的,然后交换位置,不断进行,直到实现一轮
*/
package quickSort;
class QuickSort
{
public static void main(String[] args)
{
int[] arr={1,3,5,2,5,3,6};
quickSort(arr,0,arr.length-1);
for(int i=0;i<arr.length-1;i++)
System.out.println(arr[i]);
}
public static void quickSort(int[] arr,int start,int end)
{
int i,j,temp,mid;
i=start;
j=end;
mid=(i+j)/2;
do
{
while(arr[i]<arr[mid] && i<end)
i++;
while(arr[j]>arr[mid] && j>start)
j--;
if(i<=j)
{
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
i++;
j--;
}
}
while (i<=j);
if(i<end)
{
quickSort(arr,i,end);
}
if(j>start)
{
quickSort(arr,start,j);
}
}
}
QuickSort
最新推荐文章于 2024-01-06 21:04:09 发布