C语言_数据结构:随机10000个数字,进行所学的各种排序(八大排序)

这篇博客介绍了C语言中数据结构的应用,通过随机生成的10000个数字,详细展示了冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序和基数排序等八种排序算法的实现过程,并提供了源码下载链接。
摘要由CSDN通过智能技术生成

C语言_数据结构:随机10000个数字,进行所学的8(9)大排序


题目:

由计算机生成10000个整数,使用所学几种排序算法进行排序,统计排序所用的时间,分析各种排序的性能。

创建数组

//创建数组
int *CreatArray() {
   

	int *arr = (int*)malloc(sizeof(int)*MAX);
	srand((unsigned int)time(NULL));
	for (int i = 0; i < MAX; i++) {
   

		int randNum = rand() % MAX;
		arr[i] = randNum;
	}
	return arr;
}

1、冒泡排序

//冒泡排序
void BubbleSort(int arr[],int length) {
   
	for (int i = 0; i < length; i++) {
   
		for (int j = length-1; j>i; j--) {
   
			if (arr[j-1] < arr[j]) {
   
				Swap(&arr[j-1],&arr[j]);
			}
		}
	}
}

2、选择排序

//选择排序
void SelectSort(int arr[], int length) {
   

	//选择排序,减少了交换次数
	for (int i = 0; i < length; i++) {
   
		int min = i;
		for (int j = i + 1
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值