快速排序代码大揭秘:从随机数组生成到高效排序实现
以下是快速排序的完整实现代码: ```cpp #include <iostream> #include <stdlib.h> #include <time.h> const int n = 10; const int min = 10; const int max = 99; int getrand(int min, int max) { return (rand() % (max - min + 1) + min); } void set(int r[], int n) { int i; for (i = 0; i < n; i++) r[i] = getrand(min, max); } void show(int r[], int n) { int i; for (i = 0; i < n; i++) std::cout << r[i] << " "; std::cout << std::endl; } int partition(int r[], int i, int j) { int pivot = r[i]; int left = i + 1; int right = j; while (true) { while (left <= right && r[left] <= pivot) left++; while (left <= right && r[right] > pivot) right--; if (left > right) break; std::swap(r[left], r[right]); } std::swap(r[i], r[right]); return right; } void quicksort(int r[], int i, int j) { if (i < j) { int pivotIndex = partition(r, i, j); quicksort(r, i, pivotIndex - 1); quicksort(r, pivotIndex + 1, j); } } int main() { srand(time(0)); int a[n]; set(a, n); std::cout << "原始数组: "; show(a, n); quicksort(a, 0, n - 1); std::cout << "排序后的数组: "; show(a, n); return 0; } ``` ######[AI写代码神器 | 472点数解答 | 2024-11-14 10:51:44]
- 代码填空挑战:完成正态分布、随机数生成及数据处理代码(阿里通义 | 506点数解答 | 2025-03-23 14:32:14)316
- 挑战!完成代码填空解锁数据处理奥秘(字节豆包 | 116点数解答 | 2025-03-26 22:22:15)335
- 挑战填空!完成这段 NumPy 代码实现数据生成与保存(DeepSeek | 178点数解答 | 2025-03-26 22:26:30)396
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- 巴黎奥运:中国女排淘汰赛对决土耳其,朱婷成致胜关键!(字节豆包 | 448点数解答 | 2024-08-06 15:59:48)162
- Python 实现:四位数重组求最大最小数差值(字节豆包 | 144点数解答 | 2026-02-01 12:49:54)23
- Python 代码求解:小明当选 Y 国总统至少需多少选民支持?(字节豆包 | 207点数解答 | 2026-02-01 12:51:14)32
- 拍卖干草:如何定价才能收益最大化?(DeepSeek | 1171点数解答 | 2026-02-23 21:10:09)19
- C++实现计算最少添加数字次数以匹配两个数组元素(字节豆包 | 714点数解答 | 2026-03-08 19:44:54)13
- 用 JavaScript 实现福利彩票抽奖:一键体验浏览器上的中奖乐趣!(GPT | 282点数解答 | 2024-09-25 20:36:52)265
- JavaScript实现福利彩票抽奖:含规则、界面与代码示例(GPT | 1542点数解答 | 2024-09-27 14:41:50)430
- 用 C++ 和 OpenCV 生成带随机偏移的圆周上的点:代码剖析(字节豆包 | 29点数解答 | 2024-11-06 23:40:42)259