首页 > 代码库 > 【选择排序】简单选择排序
【选择排序】简单选择排序
思想:每经过一趟比较就找出一个最小值,与待排序列最前面的位置互换即可。
算法分析:时间复杂度O(n2);稳定性:不稳定。
1 #include <stdio.h> 2 3 void SelectSort(int a[], int len) 4 { 5 int i, j, k, tmp; 6 for (i = 0; i < len - 1; i++) 7 { 8 k = i; 9 for (j = i + 1; j < len; j++)10 {11 if (a[j] < a[k])12 {13 k = j;14 }15 }16 if (i != k)17 {18 tmp = a[i];19 a[i] = a[k];20 a[k] = tmp;21 }22 }23 }24 25 int main(void)26 {27 int a[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0};28 SelectSort(a, 11);29 30 for (int i = 0; i < sizeof(a) / sizeof(int); i++)31 {32 printf("%d ", a[i]);33 }34 printf("\n");35 36 return 0;37 }
【选择排序】简单选择排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。