计导试验报告6

实验 6 排序算法 计算机类3班 施家鑫 25020007105 Content 实验 6 排序算法 Content C语言实现 生成100000个随机数 实现冒泡排序功能 实现快速排序功能 分别记录两者执行时间,并进行比较 完成主程序 Python语言实现 生成100000个随机数到数组 冒泡排序功能 快速排序功能 记录执行时间并进行比较 主程序 关于本文档的撰写 C语言实现 随机生成 100000个随机数,进行冒泡排序和快速排序,并比较执行时间。 生成100000个随机数 引用头文件 #include <stdlib.h> // 使用其中的rand()函数 #include <time.h> // 记录执行时间 // 使用其中的time()函数为随机数做种子,以保证“随机” 使用time()为随机数做种 srand(time(NULL)); 生成100000个随机数 int a[100001] = {0}; for (int i = 0; i < 100000; i++) { a[i] = rand() % 1000000; } 实现冒泡排序功能 void bubble_sort(int a[], int n) { int i, j, temp; for (i = 0; i < n-1; i++) { for (j = 0; j < n-i-1; j++) { if (a[j] > a[j+1]) { temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } } 实现快速排序功能 void quick_sort(int a[], int low, int high) { if (low < high) { int pivot = a[high]; int i = low - 1; for (int j = low; j < high; j++) { if (a[j] < pivot) { i++; int temp = a[i]; a[i] = a[j]; a[j] = temp; } } int temp = a[i + 1]; a[i + 1] = a[high]; a[high] = temp; int pi = i + 1; quick_sort(a, low, pi - 1); quick_sort(a, pi + 1, high); } } 分别记录两者执行时间,并进行比较 使用两个变量分别记录开始与结束时间 clock_t start, end; 在排序功能执行的代码前后分别加上 start = clock(); end = clock(); 记录对应的时间 ...

November 28, 2025 · 3 min · 512 words · Me