排序演算法應用一 快速 選擇 冒

2023-01-10 21:00:04 字數 2039 閱讀 2799

排序演算法應用一(快速、選擇、冒泡法排序)

二、設計思路

1、總體設計

1)分析程式的功能

(1)輸入10個數

(2)對10個數用三種方法進行排序

2)系統總體結構:設計程式的組成模組,簡述各模組功能。

(1)主函式輸入資料,輸出結果

(2)五個其它函式,三種不同方法(快速法選擇法冒泡法)對資料進行排序

2、各功能模組的設計:說明各功能模組的實現方法

3、設計中的主要困難及解決方案

在這部分論述設計中遇到的主要困難及解決方案。

(1) 使用「選擇法」進行排序,用函式實現並統計排序次數。

(2) 使用「quicksort」 法進行排序,用函式實現並統計排序次數。

(3) 使用「冒泡法」進行排序,用函式實現並統計排序次數

4、你所設計的程式最終完成的功能

1)說明你編制的程式能完成的功能

使資料按照一定次序(公升序或降序)排列

2)準備的測試資料及執行結果

準備測試的資料:

19 88 70 20 23 14 13 27 54 41

執行結果:

輸入10個無序的數

19 88 70 20 23 14 13 27 54 41

冒泡法排序結果為:

排序次數為11次

13 14 19 20 23 27 41 54 70 88

選擇法排序結果為:

排序次數為10次

13 14 19 20 23 27 41 54 70 88

快速法排序結果為:

排序次數為13次

13 14 19 20 23 27 41 54 70 88

press any key to continue

三、程式清單

#include<>

const int n=10;

int j1=0;

void sort1(int *a,int n冒泡法排序

void sort2(int *b,int n選擇法排序

cout<<"排序次數為"< for(i=0;i cout< cout<}

void swap(int &a,int &b交換兩個數

int partition(int array,int low,int high將陣列分成兩部分,前一部分的值均比後一部分值小

返回分界點

int key;

key=array[low];

while(low

return low;

}int sort3(int array, int low, int high快速法排序

j1++;

return j1;

} void mpjg(int array快速法結果輸出

void main()

cout<<"冒泡法排序結果為:"< sort1(a,n);

cout<<"選擇法排序結果為:"< sort2(b,n);

cout<<"快速法排序結果為:"< cout<<"排序次數為"< mpjg(c);

}(說明:程式清單中一定要有注釋。將程式中自己編寫的**列在此處,系統自動生成的**就不要列出了。程式清單部分的行間距設為1行即可。)

四、對該設計題目有何更完善的方案

1、對自己完成程式進行自我評價。

在課程設計過程中我盡自己最大努力使程式完善,儘管如此,由於自己所學有限不免有綴餘和不足,但相信隨著知識的豐富和對任務認識的加深,一定會找到更好的解決方案。

2、對課題提出更完善的方案

五、收穫及心得體會

1.自學能力有了很大的提高

2. 在老師悉心教導下提高了自己建立程式文件、歸納總結的能力

3.與同學老師的交流能力有所提高

日期: 2023年 6 月 20 日

快速排序演算法介紹

設要排序的陣列是a 0 a n 1 首先任意選取乙個資料 通常選用陣列的第乙個數 作為關鍵資料,然後將所有比它小的數都放到它前面,所有比它大的數都放到它後面,這個過程稱為一趟快速排序。值得注意的是,快速排序不是一種穩定的排序演算法,也就是說,多個相同的值的相對位置也許會在演算法結束時產生變動。一趟快...

C經典演算法 氣泡排序 選擇排序 插入排序 希爾排序

public void bubblesort int r 本趟排序未發生交換,提前終止演算法 if exchange 氣泡排序 本人用了c 開發出氣泡排序演算法。希望能為c 語言的學習者帶來一些益處。不要忘了,學語言要花大力氣學資料結構和演算法。using system namespace bubb...

初一數學,方案選擇應用題

1 一種節能燈的功率為10瓦 0.01千瓦 售價為60元 一種白熾燈的功率為60瓦,售價為3元.兩種燈的照明效果一樣,使用壽命也相同 3000小時以上 如果電費 為0.5元 千瓦 時 消費者選用哪種燈可以節省費用?2 某學校計畫在總費用2300元的限額內,利用汽車送234名學生和6名教師集體外出活動...