美文网首页
Java冒泡排序

Java冒泡排序

作者: 黑咔 | 来源:发表于2019-07-26 15:30 被阅读0次

一、衡量排序算法的优劣:

  • 时间复杂度:分析关键字的比较次数和记录的移动次数
  1. 时间频度:一个算法花费的时间与算法中语句的执行次数成比例,哪个算法中语句执行的次数多,它花费的时间就多。一个算法中的语句执行次数称为语句频度或时间频度。计为T(n)

2.空间复杂度:分析排序算法中需要多少辅助内存

二、冒泡排序

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

2.数据交换的步骤演示:

冒泡排序

3.代码实现

    public static void bubbleSort(int[] array) {
        int temp = 0;
        boolean flag = false;
        for (int i = 0; i < array.length - 1; i++) {
            for (int j = 0; j < array.length - 1 - i; j++) {
                if (array[j] > array[j + 1]) {
                    temp = array[j];
                    array[j] = array[j + 1];
                    array[j + 1] = temp;
                    flag = true;
                }
            }
            if (!flag) {
                break;
            } else {
                flag = false;
            }
        }
    }

相关文章

网友评论

      本文标题:Java冒泡排序

      本文链接:https://www.haomeiwen.com/subject/vscfkctx.html