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

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.lryc.cn/news/606542.html

相关文章:

  • Qt之CJSON:从基础到进阶的 JSON 数据处理指南
  • langchain--2--invoke、batch、stream、ainvoke、abatch、astream
  • 远程仓库地址发生变化
  • HTTP性能优化实战
  • Redis实战(4)-- BitMap结构与使用
  • ASIC芯片简介
  • [12月考试] C
  • 【UEFI系列】Event
  • 超简单的跳动爱心
  • 【SpringMVC】拦截器,实现小型登录验证
  • 逻辑回归——银行贷款案例分析
  • Lomsat gelral 树上启发式合并
  • Coze是什么?能做什么?
  • Dify插件安装失败,一直处于安装状态?
  • 【智能体agent】入门之--1.初体验
  • OpenCV学习day2
  • RabbitMQ的特点和消息可靠性保障
  • 【neo4j】跨版本升级数据库
  • 《Java 程序设计》第 14 章 - JavaFX 基础
  • MySQL 8.0 OCP 1Z0-908 题目解析(42)
  • 企业级部署 (基于tomcat与nginx)
  • Linux和shell
  • 【运维基础】Linux 文件系统基本管理
  • Side band ECC、Inline ECC、On-die ECC、Link ECC
  • chrome.storage 和 localStorage
  • Android 基础入门学习目录(持续更新)
  • kettle插件-kettle http client plus插件,轻松解决https接口无法调用文件流下载问题
  • 面试笔记【16:9区域问题】
  • SQL注入SQLi-LABS 靶场less25a-28a详细通关攻略
  • ESP32 外设驱动开发指南 (ESP-IDF框架)——GPIO篇:基础配置、外部中断与PWM(LEDC模块)应用