快速排序(C++)
2022/2/7 11:12:44
本文主要是介绍快速排序(C++),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
int partition(int arr[], int low, int high) { int i = low; int j = high; int base = arr[low]; if (low < high) { while (i < j) { while (i < j && arr[j] >= base) { j--; } if (i < j)//右边小于基数 { arr[i++] = arr[j]; //i++;//或arr[i++] = arr[j]; } while (i < j && arr[i] < base) { i++; } if (i < j)//左侧大于基数 { arr[j--] = arr[i]; //j--; } arr[i] = base; } } return i; } void QuickSort(int *arr, int low, int high) { if (low < high) { int index = partition(arr, low, high ); cout << index << endl; QuickSort(arr, low, index - 1); QuickSort(arr, index + 1, high); } } int main(void) { int arr[] = { 163, 161, 158, 165, 171, 170, 163, 159, 162 }; int len = sizeof(arr) / sizeof(arr[0]); QuickSort(arr, 0, len - 1); for (int i = 0; i < len; i++) { cout << arr[i] << "\t"; } return 0; }
这篇关于快速排序(C++)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享
- 2024-06-06基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor-icode9专业技术文章分享
- 2024-05-29Elasticsearch慢查询日志配置
- 2024-05-29揭秘华为如此多成功项目的产品关键——Charter模板
- 2024-05-29海外IDC业务拓展的7大挑战
- 2024-05-29InLine Chat功能优化对标Github Copilot,CodeGeeX带来更高效、更直观的编程体验!
- 2024-05-29CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!
- 2024-05-29AutoMQ 生态集成 Apache Doris
- 2024-05-292024年IDC行业的深度挖掘:机遇、挑战与未来展望
- 2024-05-29五款扩展组件齐发 —— Volcano、Keda、Crane-scheduler 等,邀你体验