蓝桥杯——基础练习之分治法_快速排序

来源:互联网 发布:ai是什么软件 编辑:程序博客网 时间:2024/05/16 10:49

分治法,分而治之,基本思路:分,解,和。

初探分治之快速排序。

public class _DividedConquer {static int[] iarr;public static void main(String[] args) {// TODO Auto-generated method stubiarr=new int[]{6,4,5,3,1,2};quick(0, iarr.length-1);for(int i:iarr){System.out.print(i+" ");}}static void quick(int p,int r){if(p<r){int q=part(p,r);quick( p, q-1);quick( q+1, r);}}static int part(int p,int r){int x=iarr[r];int i=p-1;for(int j=p;j<r;j++){if(iarr[j]<x){i++;int tmp=iarr[i];iarr[i]=iarr[j];iarr[j]=tmp;}}int tmp=iarr[i+1];iarr[i+1]=iarr[r];iarr[r] =tmp;return i+1;}}


0 0
原创粉丝点击