统计求最大、最小元素的平均比较次数
编写一个实验程序,随机产生10个1-20的整数,设计一个高效算法找其中的最大元素和最小元素,并统计元素之间的比较次数。调用该算法执行10次并求元素的平均比较次数。
最开始想到写出简单的大小比较代码
#include <stdio.h>
int main() {
int a[10];
int max, min;
for (int i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
max = a[0];
min = a[0];
for (int j = 0; j < 10; j++) {
if (a[j] > max) {
max = a[j];
}
if (a[j] < min) {
min = a[j];
}
}
printf("%d %d", max, min);
return 0;
}
考虑到计数,添加计数器
考虑随机数,调用函数
srand(time(NULL));
补充
`#include <time.h>` 是一个 C 标准库头文件,它提供了一些与时间相关的函数和类型。
`<time.h>` 头文件中包含了用于处理时间和日期的函数和数据类型,如获取当前时间、转换时间格式、计算时间差等。它定义了以下常用的类型和函数:<