#include stdio.h#include stdbool.h#define MAX 7int intArray[MAX] = {4,6,3,2,1,9,7};void printline(int count) {
编程学习网为您整理以下代码实例,主要实现:C语言数据结构插入排序,希望可以帮到各位朋友。
#include <stdio.h>
#include <stdbool.h>
#define MAX 7
int intArray[MAX] = {4,6,3,2,1,9,7};
voID printline(int count) {
int i;
for(i = 0;i < count-1;i++) {
printf("=");
}
printf("=\n");
}
voID display() {
int i;
printf("[");
// navigate through all items
for(i = 0;i < MAX;i++) {
printf("%d ",intArray[i]);
}
printf("]\n");
}
voID insertionSort() {
int valuetoInsert;
int holeposition;
int i;
// loop through all numbers
for(i = 1; i < MAX; i++) {
// select a value to be inserted.
valuetoInsert = intArray[i];
// select the hole position where number is to be inserted
holeposition = i;
// check if prevIoUs no. is larger than value to be inserted
while (holeposition > 0 && intArray[holeposition-1] > valuetoInsert) {
intArray[holeposition] = intArray[holeposition-1];
holeposition--;
printf(" item moved : %d\n" , intArray[holeposition]);
}
if(holeposition != i) {
printf(" item inserted : %d, at position : %d\n" , valuetoInsert,holeposition);
// insert the number at hole position
intArray[holeposition] = valuetoInsert;
}
printf("Iteration %d#:",i);
display();
}
}
voID main() {
printf("input Array: ");
display();
printline(50);
insertionSort();
printf("Output Array: ");
display();
printline(50);
}
织梦狗教程
本文标题为:C语言数据结构插入排序
基础教程推荐
猜你喜欢
- C++函数调用运算符()重载 1970-01-01
- C++递增指针 1970-01-01
- 使用基本数据类型,并输出它们的值,int,floa 1970-01-01
- C++条件编译 1970-01-01
- \a序列表示“钟”字符。 1970-01-01
- C++ #define 1970-01-01
- C语言库difftime()函数 1970-01-01
- C++ - 指向对象的向量的性能与对象的性能 2022-10-18
- 读取名字和身高并显示信息 1970-01-01
- 使用printf()显示int类型的变量 1970-01-01
