氣泡排序:
//氣泡排序
void swap(int a,int length)}}
}
選擇排序:
//選擇排序是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。
void select_sort (int a,int length)
}if (i != k )
}}
插入排序:
// 插入排序
/* 從第乙個元素開始,該元素可以認為已經被排序;
取出下乙個元素,在已經排序的元素序列中從後向前掃瞄;
如果該元素(已排序)大於新元素,將該元素移到下一位置;
重複步驟3,直到找到已排序的元素小於或者等於新元素的位置;
將新元素插入到該位置後;
*/void insetionsort (int a,int length)
//插入位置已經找到,立即插入
a[index] = temp;
}}
快速排序:
//快速排序: 分治思想 選擇列表中的乙個元素 作為基準元素, 其他元素都與這個元素做比較,找出小於這個基準值的值,找出大於這個基準值的值
void quick_sort(int a,int left, int right)
while (i!=j)
//i = j的時候,將 temp 填入中間位置 基數歸位
a[i] = temp;
// 遞迴呼叫 基數左邊
quick_sort(a, left, i-1);
// 遞迴呼叫 基數右邊
quick_sort(a, i+1, right);
}
C語言常見的排序演算法
1 直接插入排序 思路 將待插入的數與有序區的數從右到左依次比較。include void insort int s,int n 自定義函式isort s j 1 s 0 在確定的位置插入s i void main 2 希爾排序 include void shsort int s,int n 自定義...
常見排序演算法 C
時間複雜度o n 2 原地,穩定.void bubble sort vector int nums if flag break 如果沒有交換說明已經有序,跳出迴圈 return 時間複雜度o n 2 原地,穩定.void insert sort vector int nums nums i 1 va...
C語言實現幾種常見排序演算法
worker.c created on 2010 7 1 author panfei include void swap int x,int y 插入排序 公升序 void insertsort int arr,int size arr j 1 to insert 選擇排序 降序 void sele...