0
点赞
收藏
分享

微信扫一扫

【Unity设计模式】状态编程模式

 冒泡排序源代码,带有详细注释,希望可以帮助到大家,有用的话点个赞和收藏吧,感谢大家的阅读,Java小白一直在努力,承蒙大神们的厚爱。

定义

        在程序设计语言中,排序算法主要有冒泡排序、快速排序、选择排序以及计数排序等 。

        冒泡排序(Bubble Sort)是最简单和最通用的排序方法,其基本思想是:在待排序的一组数中,将相邻的两个数进行比较,若前面的数比后面的数大就交换两数,否则不交换;如此下去,直至最终完成排序 。由此可得,在排序过程中,大的数据往下沉,小的数据往上浮,就像气泡一样,于是将这种排序算法形象地称为冒泡排序 。

代码

//冒泡排序
public class Maopaopaixu {
    public static void main(String[] args) {
        int[] arr = {234, 223, 312, 1235324, 333, 222, 111, 777, 555, 43345};
        int n;//中间变量
        // 外层循环次数为数组长度-1次
        // 下标为0的值与下标为1的值比较
        // 下标为1的值与下标为2的值比较
        // .....
        // 下标为i-1的值与下标为i的值比较
        // 因次外层循环次数为数组长度-1次
        for (int i = 0; i < arr.length - 1; i++) {
            //每次循环会选出当前最大的一个值排到最后,该最大值将不再参与之后的排序
            //因此内层循环次数会每次减少1,外层多次循环,内层循环次数可表示为数组长度-i-1
            for (int j = 0; j < arr.length - 1 - i; j++) {
                //比较两个数的大小并交换位置,较小数排在前面,较大数排在后面
                if (arr[j] > arr[j + 1]) {
                    //用中间变量暂存,互相赋值会导致两个数的值相同,导致结果错误
                    n = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = n;
                }
            }
        }
        //循环遍历数组并输出
        for (int i = 0; i < arr.length; i++) {

            System.out.println(arr[i]);
        }
    }
}

既然你都看完啦,点个赞再走啵,求求啦,还有其它文章,感兴趣的话进我主页看看波~

举报

相关推荐

0 条评论