【排序】1.排序简介与冒泡排序

排序:排序是计算机中经常进行的一种操作,目的是将一组无序记录调整为有序记录

   分为内部排序与外部排序

内部排序:排序过程不需要访问外存   过程是一个逐步扩大记录有序序列长度的过程

外部排序:参与排序的记录数很大,整个排序过程不可能在内存完成

常见的排序算法:冒泡排序、插入排序、归并排序、基数排序等稳定的排序算法

         快速排序、选择排序、希尔排序、堆排序等不稳定的排序算法

稳定排序:元文件中存在的两个或两个以上的记录经排序后,相对次序不变

就地排序:排序算法不依赖额外的辅助空间,即空间复杂度为O(1)

 

冒泡排序:一种较简单的排序算法

      重复走访要排序的数列,一次比较两个元素,顺序错误,就把他们交换过来

for (int i = 1; i < a.length; i++) {
    for (int j = 0; j < a.length-i; j++) {
        if(a[j+1]<a[j]){
            int c=a[j+1];
            a[j+1]=a[j];
            a[j]=c;
        }
    }
}

冒泡排序是稳定的排序方法

时间复杂度:  

空间复杂度:O(1)

posted @ 2017-10-22 14:52  chain155  阅读(86)  评论(0)    收藏  举报