快速排序的java实现

旧时模样 提交于 2019-12-06 08:04:18
package com.sort;/** * @Auth wxr * @Date 2019 */public class QuickSort {    public static void sortNumLeft(int [] source,int from,int to){        if(source.length>1&&to-from>0) {            int curse = source[from];            int j = from;            for (int i = from + 1; i < to + 1; i++) {                if (curse > source[i]) {                    int ss = source[i];                    for (int k = i; k > j; k--) {                        source[k] = source[k - 1];                    }                    source[j] = ss;                    j++;                }            }            sortNumLeft( source, 0, j -1 );            sortNumRight( source, j + 1, source.length - 1 );        }    }    public static void sortNumRight(int [] source,int from,int to){        if(source.length>1&&to-from>0) {            int curse = source[from];            int j = from;            for (int i = from + 1; i < to + 1; i++) {                if (curse > source[i]) {                    int ss = source[i];                    for (int k = i; k > j; k--) {                        source[k] = source[k - 1];                    }                    source[j] = ss;                    ++j;                }            }            sortNumRight( source, from, j-1 );            sortNumRight( source, j + 1, to );        }    }    public static void ss(int i){        if(i>0){            ss(--i);        }    }    public static void main(String[] args) {        int [] i={61,4,56,55,12,44,4,8,1,2,99};        QuickSort.sortNumRight( i,0,i.length-1 );        for(int ii:i) {            System.out.println( ii );        }    }}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!