ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] ## 概述 选择排序法(以从小到大排序为例) 算法思想: A.在未排序序列中找到最小(大)元素,存放到排序序列的起始位置 B.从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾 C.以此类推,直到所有元素均排序完毕 ## C++实现选择排序 ```cpp void printArray(int *a, int len) { for (size_t i = 0; i < len; i++) printf("%d\n", a[i]); } //选择排序 void xzSort(int *a, int len) { int tmp, min; for (int i = 0; i < len; i++) { min = i; for (int j = i+1; j < len; j++) { if (a[min] > a[j]) min = j; //获取最小值索引 } tmp = a[i]; a[i] = a[min]; //交换索引为i和min的位置。 a[min] = tmp; //交换索引为i和min的位置。 } } int main() { int a[] = {4,1, 2, 3, 5,7, 6}; xzSort(a, 7); printArray(a, 7); } ```