参考于 :https://www.cnblogs.com/morethink/p/8419151.html

在学校参加蓝桥杯的时候 研究过,时间久了,有些遗忘,特自己做笔记,回顾一下

1、冒泡排序

思想:重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

    @Test
    public void test1() {
        int num[] = {1, 3, 1, 4, 5, 2, 1};
        for (int i = 0; i < num.length -1; i++) {
            for (int j = 0; j < num.length -i - 1; j++) {
                if(num[j] < num[j+1]){
                    int poschage = num[j];
                    num[j] = num[j+1];
                    num[j+1] = poschage;
                }
            }
        }

        System.out.println(Arrays.toString(num));
    }

2、插入排序 (不推荐,交互频率太高)

    @Test
    public void test2() {
        int num[] = {1, 3, 1, 4, 5, 2, 1};
        for (int i = 0; i < (num.length - 1); i++) {
            for (int j = i+1; j > 0 ; j--) {
                if(num[j] > num[j-1]){
                    int poschage = num[j];
                    num[j] = num[j-1];
                    num[j-1] = poschage;
                }
            }
        }

        System.out.println(Arrays.toString(num));
    }

3、快速排序

还是那句话,你只看到了大佬轻松解决问题的光鲜,却不记得当初人家死磕Bug的痛苦。

万物皆入轮回,谁也躲不掉!

以上文章,均是我实际体验,写出来的笔记资料,不会出现全文盗用别人文章!烦请各位,支持下原创,请勿直接盗用,有条件的可以开通个会员支持下,谢谢!!!

Java Code Study » 算法 & Java 实现

招聘、单纯问问题,都可以联系我

加我QQ 公司缺人,拉我入伙