磕排序算法呵呵

  冒泡排序:

int[] list = {5,7,3,9,2,6,1,4,0,8};

for (int j = list.length - 1; j > 0; j--) {    //从大到小取出数组中所有数。
    for (int i = 0; i < j; i++) {            //依次正序取出它之前的数。
        if (list[i] > list[i + 1]) {        //如果这个数比它后面的那个数大呢,
            int temp = list[i];                //就把它俩交换过来。
            list[i] = list[i+1];            //如此一来呀,
            list[i+1] = temp;                //数组里最后一个数就是最大的啦。
        }
    }                       //然后按照第三行的内容遍历整个数组,
}                                           //就排好序了。
for(int i: list) {
    System.out.println(i);
}
咕嘟咕嘟

  附图一张:

每次最大的数都会跑到最后面去,如果把判断语句改成小于的话就是最小的跑到最前面来,所以叫冒泡排序。

 

 

  选择排序:

int[] list = {5,7,3,9,2,6,1,4,0,8};

for (int i = 0; i < list.length - 1; i++) {         //取出数组中的一个数。
    for (int j = i + 1; j < list.length; j++) {        //然后依次取出它之后的所有数。
        if (list[j] < list[i]) {                    //如果后面的数小于它呢,
            int temp = list[j];                        //就交换它们的位置。
            list[j] = list[i];                        //如此这般,
            list[i] = temp;                            //最后头一位的就是最小的了。
        }
    }                                                //继续取出后面的来比较,
}                                                    //就全排好了。
for(int i: list) {
    System.out.println(i);
}
吱悠悠地转

  附图一张:

每次最小的数都会跑到最前面去,不过我也不知道为什么叫选择排序……

posted @ 2013-11-22 23:00  Chihane  阅读(150)  评论(0编辑  收藏  举报