C++冒泡排序与选择排序
时间: 2023-11-08 16:03:03 浏览: 89
冒泡和选择排序(C/C++)
5星 · 资源好评率100%
冒泡排序和选择排序都是常见的排序算法,它们的核心思想都是通过比较和交换来实现数据的逐步有序化。不同之处在于,冒泡排序每次比较相邻的两个元素并交换位置,而选择排序则是每次选择最小(或最大)的元素放到已排好序的末尾。
下面是两种算法的示例代码:
冒泡排序:
```c
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
```
选择排序:
```c
void selection_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
int min_idx = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[min_idx]) {
min_idx = j;
}
}
int temp = arr[i];
arr[i] = arr[min_idx];
arr[min_idx] = temp;
}
}
```
阅读全文