快速排序

来源:互联网 发布:linux驱动工程师 编辑:程序博客网 时间:2024/05/14 05:33
  快速排序法  快速排序中体现的思想有分治法.

从小到大排序
1.先从数列中取出一个数作为基准数。
2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。
3.再对左右区间重复第二步,直到各区间只有一个数。

   1.i =L; j = R; 将基准数挖出形成第一个坑a[i]。   2.j--由后向前找比它小的数,找到后挖出此数填前一个坑a[i]中。   3.i++由前向后找比它大的数,找到后也挖出此数填到前一个坑a[j]中。   4.再重复执行2,3二步,直到i==j,将基准数填入a[i]中。
public static void fastSort(int[] array,int start,int end){        //初始化参数     int i=start;     int j=end;   /*      i<j 表示值得去排序   */     if(i<j){        //选定开始的元素作为第一个坑           int base=array[i];     while(i<j){         //从右向左的查找         while(i<j&&(array[j]>=base)){           j--;         }        if(i<j){                       //如果存在,则填坑,并且产生新坑j           array[i]=array[j];           i++;       }       //从左向右的查找       while(i<j&&(array[i]<base)){         i++;       }       if(i<j){         //如果存在,则填坑,并且产生新坑i      array[j]=array[i];      j--;       }     }     array[i]=base;     //分治法     fastSort(array,start,i-1);     fastSort(array,i+1,end);     } 
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 运动后心慌想吐怎么办 激素停后全身疼怎么办 运动完头晕想吐怎么办 跑了步全身酸痛怎么办 运动后全身没力气怎么办 学完游泳不会换气怎么办 猫不吃饭精神不好怎么办 运动完头晕目眩想吐怎么办 酒后第二天恶心想吐怎么办 剧烈运动后肌肉酸痛怎么办 剧烈运动后吐了怎么办 长跑后头晕想吐怎么办 运动后一直想吐怎么办 跑多了恶心想吐怎么办 剧烈运动恶心想吐怎么办 长跑之后 恶心想吐怎么办 喝咖啡后绞心痛怎么办 牛奶喝多了胃胀怎么办 运动后大量出汗头晕怎么办 屁股出汗淹的特别痛怎么办 运动完感觉很累怎么办 跑步后感觉很累怎么办 输液多了伤脾胃怎么办 运动完后特别晕怎么办 运动过量大腿肌肉酸痛怎么办 13岁发烧38.2度怎么办 头晕恶心想吐四肢无力怎么办 烧退了浑身疼怎么办 下午睡久了头疼怎么办 一天睡久了头疼怎么办 在家躺久了头疼怎么办 4周多儿童睡眠差怎么办 6岁儿童睡眠差怎么办 四年级的孩子不会写作文怎么办 四年级的孩子写不出作文怎么办? 欠了三万网贷怎么办 打完篮球浑身疼怎么办 在部队当兵意外死亡了怎么办 派派没有体力瓶怎么办 e记账登录不上怎么办 洁净净化区湿度高怎么办