冒泡,選擇,快速排序演算法比較

2021-04-08 12:47:39 字數 1618 閱讀 9261

#include

using namespace std;

void

datainput(int * p, int c);

// 輸入函式

void

datacopy(int * dest1, int * dest2, int * dest3, int * source, int c);

// 複製函式

void

datashow(int * p, int c);

// 顯示函式

void

bubblesort(int * p, int c);

// 氣泡排序

void

selectsort(int * p, int c);

// 選擇排序

void

quicksort(int * p, int left, int right);

// 快速排序

intb_loop = 0;

// 氣泡排序法迴圈次數

intb_exchange = 0;

// 氣泡排序法交換次數

ints_loop = 0;

// 選擇排序法迴圈次數

ints_exchange = 0;

// 選擇排序法交換次數

intq_loop = 0;

// 快速排序法迴圈次數

intq_exchange = 0;

// 快速排序法交換次數

intmain()

cout << "/n

程式結束,謝謝使用!^o^/n/n";

return 0;

}

void

datainput(int * p, int c)

cout << "/n

資料輸入完畢!/n";

}

void

datacopy(int * dest1, int * dest2, int * dest3, int * source, int c)

}

void

datashow(int * p, int c)

cout << endl;

}

void

bubblesort(int * p, int c)

}

b_loop++;

// 迴圈次數加}

}

void

selectsort(int * p, int c)

}

p[pos] = p[i];

p[i] = temp;

s_loop++;

} }

void

quicksort(int * p, int left, int right)

q_loop++;

}while (i <= j);

if (left < j)

quicksort(p, left, j);

if (right > i)

quicksort(p, i, right);

}

冒泡,選擇,快速排序

氣泡排序 比較相鄰的兩個數,把比較的冒上去,所以很簡單的得到 for i 0 i 5 i 選擇排序 就是打擂臺的方式,每一次找出最大的與末尾的交換,先把啊a i 的值和位置存上,然後與a j 比較,如果value大就賦值給臨時變數,然後交換位置 void selectsort char a,int ...

選擇,冒泡,快速排序

排序演算法是演算法中比較基礎的,在這裡先對三種最簡單的排序演算法做個總結。一 選擇排序 大致思路為 依次選擇無序區的最小值和無序區的第一個值交換。void exchange int a,int b void selection sort int a,int len 時間複雜度為n 2。二 氣泡排序 ...

php 冒泡 選擇 插入 快速排序演算法

1.氣泡排序法 思路分析 法如其名,就是像冒泡一樣,每次從陣列當中 冒一個最大的數出來。arr array 2,32,51,68,66,100,78,10 function getpao arr return arr 2.選擇排序法 選擇排序法思路 每次選擇一個相應的元素,然後將其放到指定的位置。f...

冒泡 選擇 插入 快速排序演算法小解

假設待排序陣列 arr array 9,5,3,6,7,1 從小到大排序 1 氣泡排序 氣泡排序的思想是每一趟找出最大的那個 最大的泡泡 經過count arr 1趟,得出最後的順序 因為要得到最大的那個數,所以需要兩層迴圈,外層表示進行的趟數,內層迴圈來進行比較 交換 即第一趟5,3,6,7,1,...

氣泡排序,選擇排序,快速排序

1.氣泡排序 氣泡排序 bubble sort 最為簡單的一種排序,通過重複走完陣列的所有元素,通過打擂臺的方式兩個兩個比較,直到沒有數可以交換的時候結束這個數,再到下個數,直到整個陣列排好順序。因一個個浮出所以叫氣泡排序。雙重迴圈時間o n 2 void bubblesort int arr in...