当前位置: 首页 > backend >正文

7月31日作业

1:请使用函数模板,写一个能够针对所有数据类型的数据的快速排序函数 并多写几个数组做测试

代码

#include <iostream>
#include <cstring>
#include <cstdlib>
#include <unistd.h>
#include <sstream>
#include <vector>
#include <memory>using namespace std;template <typename T>
void quick_sort(T* arr,int left,int right){if(left>=right)return;int i=left,j=right;T temp=arr[left];while(i<j){while(i<j && *(arr+j)>=temp)j--;*(arr+i)=*(arr+j);while(i<j && *(arr+i)<temp)i++;*(arr+j)=*(arr+i);}*(arr+i)=temp;//递归调用直到一个元素为有序quick_sort(arr,left,i);quick_sort(arr,i+1,right);}int main(int argc,const char** argv){cout<<"整数数组排序:";int arr[]={6,5,2,4,43,2,32,4,43,56,47};int len_arr=sizeof(arr)/sizeof(arr[0]);quick_sort(arr,0,len_arr-1);for(int i=0;i<len_arr;i++)cout<<arr[i]<<" ";cout<<endl;cout<<"字符数组排序:";char chr[]={'w','2','1','y','U','&','@'};int len_char=sizeof(chr)/sizeof(chr[0]);quick_sort(chr,0,len_char-1);for(int i=0;i<len_char;i++)cout<<chr[i]<<" ";cout<<endl;cout<<"字符串数组排序";string str[]={"hello","nihao","woshi","afygj"};int len_str=sizeof(str)/sizeof(str[0]);quick_sort(str,0,len_str-1);for(auto a:str)cout<<a<<" ";cout<<endl;cout<<"double数组排序:";double nums[] = {3.14, 1.59, 2.65, 0.89, 5.21, 4.76};int len_double = sizeof(nums) / sizeof(nums[0]);quick_sort<double>(nums, 0, len_double - 1);for (auto num : nums) {cout << num << " ";}cout << endl;return 0;
}

运行结果

http://www.xdnf.cn/news/16703.html

相关文章:

  • 大数据之Hive
  • SpringBoot3.x入门到精通系列:1.2 开发环境搭建
  • 本地部署VMware ESXi,并实现无公网IP远程访问管理服务器
  • Linux 服务器性能优化:性能监控,系统性能调优,进程优先级,内核升级全解析
  • Maven 与单元测试:JavaWeb 项目质量保障的基石
  • 银河麒麟桌面操作系统:自定义截图快捷键操作指南
  • 云计算一阶段Ⅱ——3. Linux 计划任务管理
  • TypeScript 基础介绍(二)
  • 使用python写一套完整的智能体小程序
  • Linux网络-------3.应⽤层协议HTTP
  • 智慧物流分拣误检率↓85%!陌讯轻量化部署算法在动态包裹检测的落地实践
  • Winform PathGradientBrush类使用
  • Conda环境下配置的基本命令
  • Ubuntu 下配置 NVIDIA 驱动与 CUDA 环境(适配 RTX 4060Ti)
  • webpack-babel
  • SAM附录详解
  • 【C#】基于SharpCompress实现压缩包解压功能
  • 揭秘动态测试:软件质量的实战防线
  • 【Golang】用官方rate包构造简单IP限流器
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博评论数据可视化分析-点赞区间折线图实现
  • 04百融云策略引擎项目laravel实战步完整安装composer及tcpdf依赖库和验证-优雅草卓伊凡
  • Cesium 快速入门(二)底图更换
  • 数据库学习------数据库隔离类型及其与事务特性
  • 如何将 Redis 监控集成到微服务整体的监控体系中( 如 Prometheus + Grafana)
  • 如何为C#加入EPPlus 包
  • 哈希相关的模拟实现
  • 【人工智能】当AI智能体遇上安全与伦理:一场技术与人性的对话
  • Java学习第九十一部分——OkHttp
  • Unity游戏开发中的3D数学基础详解
  • SQL 中 WHERE 与 HAVING 的用法详解:分组聚合场景下的混用指南