选择排序

简介: 选择排序是一种简单直观的排序算法。其基本思想是每次从未排序部分找到最小(或最大)元素,将其放到已排序部分的末尾,直至所有元素排序完成。示例代码展示了如何使用 C 语言实现选择排序,并对一个整数数组进行排序。

选择排序
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

include

// 函数声明
void selection_sort(int a[], int len);

int main() {
int arr[] = { 22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70 };
int len = sizeof(arr) / sizeof(arr[0]); // 计算数组长度

selection_sort(arr, len);  // 调用选择排序函数

// 打印排序后的数组
for (int i = 0; i < len; i++) {
    printf("%d ", arr[i]);
}

return 0;

}

// 选择排序函数
void selection_sort(int a[], int len) {
for (int i = 0; i < len - 1; i++) {
int min = i; // 记录最小值的位置,第一个元素默认最小
for (int j = i + 1; j < len; j++) {
if (a[j] < a[min]) { // 找到目前最小值
min = j; // 记录最小值的位置
}
}
// 交换两个变量
if (min != i) {
int temp = a[min];
a[min] = a[i];
a[i] = temp;
}
}
}

/
// 自定义交换函数
void swap(int
a, int b) {
int temp =
a;
a = b;
b = temp;
}
/

相关文章
|
5月前
|
算法 搜索推荐 Java
选择排序就是这么容易
选择排序就是这么容易
34 0
|
6月前
|
人工智能 算法 搜索推荐
2.选择排序
2.选择排序
22 0
|
6月前
|
搜索推荐 C++
C++选择排序的实现
C++选择排序的实现
|
11月前
|
存储 搜索推荐 索引
选择排序
选择排序
30 1
|
搜索推荐
16 选择排序
16 选择排序
30 0
|
机器学习/深度学习 搜索推荐 算法
选择排序的实现
选择排序的实现
104 1
|
搜索推荐 C语言
选择排序就这么简单
从上一篇已经讲解了冒泡排序了,本章主要讲解的是选择排序,希望大家看完能够理解并手写出选择排序的代码,然后就通过面试了!如果我写得有错误的地方也请大家在评论下指出。
166 0
选择排序就这么简单
|
算法 搜索推荐 测试技术
直接选择排序
直接选择排序
109 0
直接选择排序
|
搜索推荐 算法 JavaScript