排序演算法(一)

2021-08-26 13:54:37 字數 1261 閱讀 2637

可以按照下圖所示的方式進行分類

下面對非遞迴的排序進行介紹

1)氣泡排序

**實現如下:

#include #include void bubble_sort(int num, int length)

} }}// the optimization bubble sort algorithm

void bubble_sort_optimization(int num, int length)

} }}int main()

; int length = 5;

int i = 0;

for(i = 0; i < length; i++)

bubble_sort_optimization(num, length);

for(i = 0; i < length; i++)

system("pause");

return 0;

}

2)插入排序

**實現如下:

#include #include void insert_sort(int num, int length)

else

} }}

int main()

; int length = 5;

int i = 0;

for(i = 0; i < length; i++)

insert_sort(num, length);

for(i = 0; i < length; i++)

system("pause");

return 0;

}

3)希爾排序

**實現如下:

#include #include void shell_sort(int num, int length, int step)

for(; j >= (index + step); j -= step)}}

} }}int main()

; int length = 5;

int step = 5;

int i = 0;

for(i = 0; i < length; i++)

shell_sort(num, length, step);

for(i = 0; i < length; i++)

system("pause");

return 0;

}

來自於:

排序演算法(一)

這個學期課程很少,空閒時間很多,故重新複習了一下 演算法導論 中的常用演算法和資料結構,並且將實現 儲存到部落格,以便大三暑假找實習時方便複習。直接插入排序的思想非常簡單,將序列中第乙個元素作為乙個有序序列,然後將剩下的n 1個元素按關鍵字大小依此插入該有序序列,每插入乙個元素後依然保持該序列有序,...

排序演算法一

3個簡單的排序演算法,不多解釋了,直接上 include include void display int a,int n printf n void exchange int a,int i,int j 氣泡排序 void popsort int a,int n end for j printf ...

排序演算法(一)

氣泡排序 基本思想 在要排序的一組數中,對當前還未排好序的範圍內的全部數,自上而下對相鄰的兩個數依次進行比較和調整,讓較大的數往下沉 較小的往上冒。即 每當兩相鄰的數比較後發現它們的排序與排序要求相反時,就將它們互換。氣泡排序的示例 演算法實現 void print int arr,int size...