iOS算法篇(三)冒泡排序算法

冒泡排序:原理:冒泡顧名思義,就像氣泡從水底冒出一樣,它的排序方式是:研究了一下,它給人的感覺是像近視眼一樣,它只能看見自己和緊挨着自己的下一個數字,所以它的排序方式也就是將比較元素和緊挨着自己的元素比較看是否交換位置,然後持續這個過程,比較的一直都是緊挨着的兩個元素。下面看代碼吧,再代碼裏面再詳細解釋。

冒泡排序(Bubble Sort),是一種計算機科學領域的較簡單的排序算法
它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
這個算法的名字由來是因爲越小的元素會經由交換慢慢“浮”到數列的頂端,故名。
由於冒泡排序簡潔的特點,它通常被用來對於計算機程序設計入門的學生介紹算法的概念。 

簡單的說就是一次一次的交換數據,這樣數據就會“浮”上來

//冒泡排序  

       for(int i=1;i<array.length;i++){ 
        for(int j=i+1;j<array.length;j++){ 
            int temp=0; 
            //如果後面一個數小於前面的就交換  
            if(array[i]>array[j]){ 
                temp=array[j]; 
                array[j]=array[i]; 
                array[i]=temp; 
            } 
        } 

       } 

排序法 

最差時間分析 平均時間複雜度  穩定度  空間複雜度 
冒泡排序 O(n2) O(n2) 穩定  O(1) 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章