經典排序演算法(一)冒泡法排序 C 實現

2021-07-07 10:50:42 字數 803 閱讀 4725

冒泡法排序是一種比較簡單的排序演算法,演算法複雜度為o(

n2) (ps:最好最壞的情況下都是這樣)

具體實現步驟為:

1、指定最末元素為初始比較值,與向上相鄰的元素比較大小;

2、如果小於相鄰元素,則交換順序,相反,順序不變;

3、以步驟2中向上相鄰元素在與相鄰元素對比,然後重複步驟2;

4、重複步驟2、3,直到最頂端位置,如下圖所示:

5、重複n-1次結束

氣泡排序實現:

#include 

using

namespace

std;

template

//獲取陣列長度模板函式

int getarraylen(t& array)

int main()

; int data_size = getarraylen(data); //陣列長度

for (int i=1; i < data_size; i++) //迴圈次數}}

for(int k = 0; k < data_size; k++)

return

0;}

其中,模板getarraylen為讀取整型陣列的長度(c++中有直接讀取字元陣列長度的函式,不需要這個函式)

經典演算法 氣泡排序法

public class bubbletest bb bb new bb bb.sort arr for int i 0 i 排序 如上面,在剛開始排序的時候還一時半會沒有做出來。有幾個問題 1 為什麼要把 int temp 0 定義在排序的最外面,放在內層行不行?還有別的地方可以定義嗎?答 要想知...

經典排序演算法(一) 氣泡排序

氣泡排序是最基礎的一種排序方法,在我們剛接觸程式語言的迴圈時,常常會接觸到這種演算法,利用的是氣泡越冒越大的原理。它的時間複雜度為o n 2 具體原理如下 假設現在有一行待排序的數 1,5,2,6,3 利用氣泡排序演算法時,程式是這樣執行的。1 第一組排序 找出最大的數並放至隊尾 程式會拿出這一行數...

排序演算法(一) 冒泡法排序演算法

冒泡法排序是c語言中比較經典的排序方法。它的基本原理是比較兩個相鄰的元素,將值大的元素交換的右邊。例如我們對5 2 4 3 1這5個數進行由小到大的排序,採用冒泡法的步驟如下所示。第一輪冒泡 第二輪冒泡 第三輪冒泡 第四輪冒泡 經過上面4輪氣泡排序,完成了5個元素的由小到大的排序。下面我們採用c語言...