C++ 对数组的快速排序算法

2023-05-16

#include "stdio.h"

//交换两个数
void swap(int &a,int &b){
    int t=a;
    a=b;
    b=t;
}
//根据第一个数,把小于第一个数的数放在前面,把打印第一个数的数放在后面
int partition(int *a,int l,int r){
    int p=a[l];
    int i=l+1;
    int j=i;
    while (j<=r){
        if(p>a[j]){
            swap(a[i],a[j]);
            i++;
        }
        j++;
    }
    swap(a[l],a[i-1]);
    return i-1;
}
//快速排序
void quicklysort(int *a,int l,int r){
    if(l<r){
        int p=partition(a,l,r);
//        排序左边
        quicklysort(a,l,p-1);
//        排序右边
        quicklysort(a,p+1,r);

    }
}

void sort(int *a,int n){
    int l=0,r=n-1;

    quicklysort(a,l,r);
}

int main(){

    int n;
    scanf("%d",&n);
    int a[10000];
    for (int i = 0; i < n; ++i) {
        scanf("%d",&a[i]);
    }
    sort(a,n);
    for (int i = 0; i < n; ++i) {
        printf("%d\t",a[i]);
    }

    return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++ 对数组的快速排序算法 的相关文章

  • 基于Maven的Mybatis开发环境搭建

    1 首先我们需要创建一个基于Maven的java项目 2 在数据库中创建一张表及在idea中创建对应实体类 package com ffyc mybatisdemo model public class Admin private int
  • C++程序员这行能干一辈子吗?

    有人说 xff0c 程序员这一行就是吃青春饭 xff0c 不能干一辈子 xff0c 因为程序员面对的是一份高强度的工作 xff0c 同时面临着技术的快速迭代 xff0c 对于身体素质 学习能力等都有很高的要求 xff0c 所以很多人都面临入
  • 新装的centos7使用ip addr 命令不显示ens33的ip地址

    由于需要 xff0c 又重新装了几台虚拟机 xff0c 都是不同的ip xff0c 新装的虚拟机都不会显示ens33 下面的ip地址 就像这样 xff1a 输入 cd etc sysconfig network scripts 把对应的含有
  • GoLang之ACM控制台输入输出

    文章目录 GoLang之控制台输入输出1 源码1 1Scan1 2Scanf1 3Scanln 2 函数使用2 1scan输入单个参数时 xff0c 遇到回车会停止 多行 2 2scan输入单个参数时 xff0c 遇到空格会停止 多行 2
  • 基于SpringBoot+VUE的服装销售商城管理系统

    项目背景 随着科学技术的飞速发展 xff0c 社会的方方面面 各行各业都在努力与现代的先进技术接轨 xff0c 通过科技手段来提高自身的优势 xff0c 服装销售商城当然也不能排除在外 服装销售商城是以实际运用为开发背景 xff0c 运用软
  • 用Selenium定位充满div class页面元素的方法,id、xpath都没用的抓狂情况下

    以搜狐网首页为例 xff0c 我们要定位 搜狗邮箱 这个链接 xff08 如果是xpath等等各种selenium内置提供的定位方法都没用的情况下 xff09 第一步 xff0c 找到该元素 xff0c 此时显示 lt div class
  • SEC物权链奖金制度分析

    启程SEC物权链是什么 xff1f 靠谱吗 xff1f SEC公链是什么 xff1f 物权链怎么样 xff1f 分析于下 xff1a 一 定位 xff1a 依托原中小企业上市包装辅导策划以及不良资产运作等业务 xff0c 130家实体资产分
  • 基于SSM的个人健康信息管理

    项目背景 随着科学技术的飞速发展 xff0c 通过科技手段提高自身的优势 xff1b 对于个人健康信息管理当然也不能排除在外 xff0c 随着网络技术的不断成熟 xff0c 带动了个人健康信息管理 xff0c 它彻底改变了过去传统的管理方式
  • 基于spring boot的个人博客系统的设计与实现

    末尾获取源码 开发语言 xff1a Java Java开发工具 xff1a JDK1 8 后端框架 xff1a SpringBoot 前端 xff1a Vue 43 HTML 数据库 xff1a MySQL5 7和Navicat管理工具结合
  • day 3

    用栈来做是最简便的 栈 stack 是一种数据结构 xff0c 遵循先进后出的原则 最常用的方法为stack pop弹出最顶部的元素并删除 stack peek弹出最顶部的元素查看 xff0c 但不删除 stack push 添加一个元素
  • java方向笔试强训day6

    分别使用字符串和数组的方式 xff0c 数组更简便一些 import java util Scanner public class test26 将字符串转化为数字 public static int function26 String s
  • equals和==的区别

    equals和 61 61 经常用来去比较两个值或者两个对象 61 61 如果只是用来比较基本数据类型常量 的话 xff0c 那么比较的就是两个常量的值 xff0c 如果用来去比较两个对象引用 xff0c 那么比较的是两个对象的地址 equ
  • java训练day 17 ①杨辉三角(二维数组)②二叉树的镜像(数据结构+递归)

    目录 杨辉三角 二叉树的镜像 杨辉三角 import java util public class Main public static void main String args Scanner scanner 61 new Scanne
  • Linux系统项目部署常见问题

    目录 进入数据库 修改数据库密码 未设置或忘记 部署操作 使用jar包部署和修改操作 使用war包部署 修改端口号 ssm项目打包war包可能遇到问题 进入数据库 没有设置数据库密码则使用 mysql uroot 设置了数据库密码则使用 m
  • 音乐web网站搭建思路

    目录 项目所涉及的页面及对应功能 项目设计思路 数据库设计 Http响应数据格式设计 页面各个功能的请求响应格式设计 1 登录功能 2 上传音乐功能 3 删除音乐功能 4 批量删除音乐 5 查询音乐信息 6 收藏音乐 取消收藏音乐 7 播放
  • 五子棋项目

    目录 核心技术 主要模块和功能 基本思路 注册 登录接口 具体实现 匹配功能接口 具体实现 用户对战接口 具体实现 项目源码Gitee地址 网页版五子棋的基本思路及实现 核心技术 Spring SpringBoot SpringMVCWeb
  • Redis笔记

    Redis 内容来自菜鸟教程 redis部分 REmote DIctionary Server Redis 是一个由 Salvatore Sanfilippo 写的 key value 存储系统 xff0c 是跨平台的非关系型数据库 Red
  • Jmeter接口测试实战练习题及答案(本博客原创·全网首发)

    接口地址 Post xff1a http 10 9 15 72 8093 Api PayGateway 接口参数 参数名 参数值 说明 SystemCode Alipay 系统代码 plateformCode Alipay 平台代码 ser
  • 《操作系统》-生产者消费者问题

    什么是生产者消费者问题 xff1f 系统中有一组生产者进程和一组消费者进程 生产者进程每次生产一个产品放入缓冲区 xff0c 消费者进程每次从缓冲区中取出一个进程并使用 xff0c 那么他们之间具有这样一层关系 生产者 消费者共享一个初始为
  • 普通类和抽象类的区别

    普通类和抽象类的区别 抽象类普通类普通类和抽象类的区别总结 抽象类 含有抽象方法的类就叫抽象类 而抽象方法就是被abstract修饰的方法 xff0c 这个方法可以没有具体的实现 在抽象类的子类中必须对抽象方法进行重写 xff0c 当其子类

随机推荐

  • PowerShell 安装、配置和美化

    文章目录 安装 Windows TerminalPowerShell 7安装 PowerShell 7查看版本Winget 安装安装 MSI 包 配置开启 PSReadLine 2 1 预测性 IntelliSense其他配置 美化手动安装
  • c++学习笔记(八)程序一闪而过怎么办?如何让命令提示符暂停?

    在使用控制台输出的时候 xff0c 你可能经常遇到还没有看清楚输出结果如何就自动退出的情景 这很令人头疼 xff0c 下面我就介绍几种方式避免控制台退出 当然你使用CLion可以不写 xff0c 节约时间 xff0c 但是也要知道 xff0
  • Zabbix 6.0 图文安装部署讲解---LNMP环境

    Zabbix 6 0 图文安装部署讲解 LNMP环境 简介环境需求部署环境关闭系统防火墙一 Mysql8 0 30 部署 二 nginx 部署三 PHP 部署四 zabbix server 部署五 Web端初始化六 解决zabbix 6 0
  • Hive 不同级别日志配置 hive-log4j2.properties

    span class token comment Licensed to the Apache Software Foundation ASF under one span span class token comment or more
  • 飞机订购票系统(数据库课程大作业)

    一 需求分析 nbsp 1 1 功能需求及描述 nbsp nbsp nbsp nbsp 通过对机票预定业务的调查 明确了飞机订购票系统共包括乘客信息模块 航班信息模块 机票订购模块 机票退票模块以及取票信息模块五个模块 图1 1 总体功能模
  • 本地与linux服务器文件互传(超简单)

    利用系统自带的命令行窗口powershell上传 xff08 win10以上系统自带的 xff0c 系统级应用 xff0c 十分推荐使用 xff09 在这Linux 用户名 xff1a hadoop ip 192 168 53 20 打开搜
  • 【剑指offer系列】剑指offer 03-06

    这次我们来讲解剑指offer的全部题目 xff0c 今天是第一天 xff0c 我们来讲解第三题到第六题 xff08 我也不清楚为什么力扣上查不到第一题和第二题 xff09 一 剑指offer 03 题目链接 xff1a 力扣 题目描述 xf
  • 什么是scrum中的3355

    scrum的3355是指 xff1a 3个工件 xff1a 产品Backlog Sprint Backlog 潜在可交付软件增量 3个角色 xff1a PO Master 团队 xff08 最适合人数为7 2到7 43 2之间 xff09
  • 搭建ant+jenkins+jmeter自动化接口测试框架(详细篇)

    引言 为什么要持续集成 1 减少风险 2 减少假定 3 减少重复过程 4 增强项目的可见性 5 持续集成可以带来两点积极效果 xff1a 1 有效决策 xff1a 持续集成系统为项目构建状态和品质指标提供了及时的信息 xff0c 有些持续集
  • Linux C生产者和消费者(线程)

    生产者和消费者 生产者消费者问题实现目标原理代码 生产者消费者问题 生产者消费者共享缓冲区 xff0c 生产者向缓冲区中放数据 xff0c 消费者从缓冲取中取数据 xff0c 当缓冲区中被放满时 xff0c 生产者进程就必须进入挂起状态 x
  • HPE DL388GEN9 /windows server 2012r2 重置管理员密码/忘记管理员密码

    有台HPE DL388GEN9 windows server 2012r2的主机 xff0c 不知道密码 从CSND上查了有人可以通过U盘PE进去用工具去改掉 实测 xff0c 难以进入PE xff08 也可能是我操作有问题 xff09 x
  • ArchLinux,ManjaroLlinux安装,运行Android软件。安装anbox(详细)

    安装anbox我也是用了一个下午的时间来进行安装 xff0c 因此我做了一下总结 xff0c 方便大家安装 这个安装教程arch和manjaro都是可以实现的 xff0c 因为manjaro是arch的分支 xff0c 同样也可以使用anb
  • ArchLinux的安装(BIOS引导方式安装)

    archlinux的安装对于很多新手朋友很不友好 xff0c 于是我对archlinux的安装做了一下整理 xff0c 方便大家安装 安装之前我们需要准备一下 xff1a archlinux的镜像iOS文件 U盘 xff0c 或者虚拟机 脑
  • 汇编语言,and、or指令

    and 和 or指令 and指令 xff0c 作用按位与运算 mov ax 1011 1100b mov bx 1100 1011b and ax bx ax的结果为 xff1a 1000 1000 or指令 xff0c 作用 xff1a
  • 解决wget错误:ERROR: The certificate of ‘xxx’ is not trusted.

    使用wget出现以下错误 wget https github com mozilla geckodriver releases download v0 31 0 geckodriver v0 31 0 linux64 tar gz ERRO
  • git 报错SSL certificate problem: unable to get local issuer certificate解决办法

    git中的SSL certificate problem unable to get local issuer certificate错误的解决办法 uManBoy 这是由于当你通过HTTPS访问Git远程仓库的时候 xff0c 如果服务器
  • Linux 对整个系统备份和还原

    对系统进行备份非常的重要 xff0c 如果有一天 xff0c 系统崩溃了 xff0c 可以重装系统 xff0c 但是重装系统后又需要进行相关的配置 xff0c 这会显得非常的麻烦 xff0c 又会浪费很多的时间 备份的方式 xff1a 分两
  • Win11安装python-3.11.1

    注意整个安装过程需要联网 xff01 xff01 xff01 python 3 11 1下载地址 xff1a https www python org ftp python 3 11 1 python 3 11 1 amd64 exe 1
  • 三分钟记住20道性能测试经典面试题

    1 什么是性能测试 xff1f 测试系统有没有性能问题 考虑时间 xff0c 空间 服务端资源是否足够 响应时间是否超时 系统是否足够稳定 2 性能测试的应用领域有哪些 xff1f 能力验证 xff1a 乙方向甲方交付项目时 xff0c 声
  • C++ 对数组的快速排序算法

    include 34 stdio h 34 交换两个数 void swap int amp a int amp b int t 61 a a 61 b b 61 t 根据第一个数 xff0c 把小于第一个数的数放在前面 xff0c 把打印第