#include <stdio.h> #include <malloc.h> //时间复杂度为O(N^2) //冒泡法从小到大排序 void main() { int *a; int numCount; int i, j, temp; //输入需要排序数字的个数 printf("input numCount:\n"); scanf("%d", &numCount); //动态生成一维数组 a = (int *)malloc(sizeof(int) * numCount); printf("Now you input\n"); for (i = 0; i < numCount; ++i) { scanf("%d", &a[i]); } for (i = 0; i < numCount-1; ++i) { //共比较numCount-1轮 for (j = 0; j < numCount-1-i; ++j) { //每轮比较numCount-1-i次 if (a[j] > a[j+1]){ temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } //输出排序后的结果 for (i = 0; i < numCount; ++i) { printf("%d ", a[i]); } }
排序算法_1,冒泡排序
最新推荐文章于 2023-06-02 22:28:47 发布