利用c语言编写程序分别用直接插入排序,简单选择排序,冒泡排序对数字进行排序
时间: 2023-07-15 21:14:00 浏览: 154
C语言实现选择排序、直接插入排序、冒泡排序的示例
好的,以下是三种排序算法的 C 语言实现:
1. 直接插入排序
```c
void insert_sort(int arr[], int len) {
int i, j, temp;
for (i = 1; i < len; i++) {
temp = arr[i];
for (j = i - 1; j >= 0 && arr[j] > temp; j--) {
arr[j + 1] = arr[j];
}
arr[j + 1] = temp;
}
}
```
2. 简单选择排序
```c
void select_sort(int arr[], int len) {
int i, j, min_idx, temp;
for (i = 0; i < len - 1; i++) {
min_idx = i;
for (j = i + 1; j < len; j++) {
if (arr[j] < arr[min_idx]) {
min_idx = j;
}
}
if (min_idx != i) {
temp = arr[i];
arr[i] = arr[min_idx];
arr[min_idx] = temp;
}
}
}
```
3. 冒泡排序
```c
void bubble_sort(int arr[], int len) {
int i, j, temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
```
以上三种排序算法都是基于比较的排序算法,时间复杂度均为 O(n^2)。在实际使用时应根据数据规模、性能等具体情况进行选择。
阅读全文