• 技术文章 >Java >java教程

    java冒泡排序算法代码

    高洛峰高洛峰2017-01-17 12:52:50原创1117
    /**
     * 原理:
     * 进行n次循环,每次循环从后往前对相邻两个元素进行比较,小的往前,大的往后
     * 
     * 时间复杂度:
     * 平均情况:O(n^2)
     * 最好情况:O(n)
     * 最坏情况:O(n^2)
     *
     * 稳定性:稳定
     **/
    public class 冒泡排序 {
        public int[] bubbleSort(int[] a, int n) {
            for (int i = 0; i < n; i++) {
                int flag = 0;
                for (int j = n - 1; j > i; j--) {// i or i-1 ?
                    if (a[j] < a[j - 1]) {
                        int x = a[j];
                        a[j] = a[j - 1];
                        a[j - 1] = x;
                        flag = 1;
                    }
                }
                if (flag == 0)
                    break;
            }
            return a;
        }
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            int[] a = new int[] { 25, 56, 32, 20, 1, 5, 89, 3, 8, 41 };
            冒泡排序 sort = new 冒泡排序();
            sort.bubbleSort(a, a.length);
            for (int i = 0; i < a.length; i++) {
                System.out.print(a[i] + " ");
            }
        }
    }


    更多java冒泡排序算法代码相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java 冒泡排序
    上一篇:Java排序方法sort用法详解 下一篇:十种JAVA排序算法实例
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 实例详解Java基础的控制语句• Java集合框架之PriorityQueue优先级队列• 一起来聊聊与Java中性能相关的设计模式• JAVA外观模式详解• 详细整理java枚举的使用总结
    1/1

    PHP中文网