排序算法 之 (简单选择排序)
10.5、简单选择排序
这个算法的思想很简单,每次选择从没有排序的元素中选择最小(大)元素放到到前(后)面
简单选择排序是不稳定的
简单选择排序代码实现
#include <stdio.h> #include <stdlib.h> #define boolean int #define false 0; #define true 1; //简单选择排序:nums:待排序数组,length:数组长度 void SelectSort(int nums[],int length){ for(int i = 0;i < length-1;i++){ int min = i; for(int j = i+1;j < length;j++){ if(nums[j] < nums[min]) min = j; } if(min != i){ int temp = nums[i]; nums[i] = nums[min]; nums[min] = temp; } } } int main(){ int nums[] = {49,38,65,97,76,13,27,47,89,13,48,76,88,88,99}; int length = 15; printf("简单选择排序前:"); for(int i = 0; i < length ;i++){ printf("%d ",nums[i]); } SelectSort(nums,length); printf("\n"); printf("简单选择排序后:"); for(int i = 0; i < length ;i++){ printf("%d ",nums[i]); } return 0; } //结果: 简单选择排序前:49 38 65 97 76 13 27 47 89 13 48 76 88 88 99 简单选择排序后:13 13 27 38 47 48 49 65 76 76 88 88 89 97 99
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)