直接插入排序完整代码
时间: 2023-07-02 16:22:00 浏览: 49
好的,下面是直接插入排序的完整C语言代码:
```c
#include <stdio.h>
void insertionSort(int arr[], int n) {
int i, key, j;
for (i = 1; i < n; i++) {
key = arr[i];
j = i - 1;
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
int main() {
int arr[] = { 12, 11, 13, 5, 6 };
int n = sizeof(arr) / sizeof(arr[0]);
insertionSort(arr, n);
printf("Sorted array: \n");
for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
return 0;
}
```
该代码中包含了一个名为`insertionSort`的函数,用于对整型数组进行直接插入排序。在`main`函数中,我们定义一个整型数组`arr`并将其传递给`insertionSort`函数进行排序。排序完成后,我们遍历数组并将其输出到控制台。
相关问题
c语言实现直接插入排序完整代码
好的,以下是C语言实现直接插入排序的完整代码:
```c
#include <stdio.h>
void insertion_sort(int arr[], int n) {
int i, j, temp;
for (i = 1; i < n; i++) {
temp = arr[i];
j = i - 1;
while (j >= 0 && arr[j] > temp) {
arr[j+1] = arr[j];
j--;
}
arr[j+1] = temp;
}
}
int main() {
int arr[] = {64, 25, 12, 22, 11};
int n = sizeof(arr) / sizeof(arr[0]);
insertion_sort(arr, n);
printf("Sorted array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
以上代码实现了直接插入排序的逻辑,将一个无序数组按照从小到大的顺序进行排序。
直接插入排序的c语言完整代码
直接插入排序是一种简单的插入排序算法,它的思路是将待排序序列分为有序区和无序区,每次从无序区选取一个元素插入到有序区中的正确位置,使得有序区仍然有序。下面是直接插入排序的C语言完整代码:
```c
void insertionSort(int arr[], int n) {
for (int i = 1; i < n; i++) {
int key = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = key;
}
}
```
该算法的时间复杂度为O(n^2),但在实际应用中,由于该算法在排序过程中只涉及相邻元素的交换和比较操作,所以它的空间复杂度相对较低,而且对于小规模数据排序效率较高。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)