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

【算法】快排

题目

快排

思路

如果输入为0或1直接返回;否则取一个基准值,可以取中间位置,如果输入是有序的可以避免时间过长,然后移动指针,先让i指针右移,如果小于基准值就继续右移,j指针左移同理。如果指针都停住,再看i<j,就交换。

代码

#include<iostream>
using namespace std;
void quick_sort(int q[], int l, int r)
{if (l >= r)return;int x = q[(l+r)/2], i = l - 1, j = r + 1;while (i < j){do i++;while (q[i] < x);do j--;while (q[j] > x);if (i < j)swap(q[i], q[j]);}quick_sort(q, l, j);quick_sort(q, j + 1, r);
}
int main()
{int n;cin >> n;int q[n];for (int i = 0;i < n;i++){cin>>q[i];}quick_sort(q, 0, n - 1);for (int i = 0;i < n;i++){cout << q[i] << " ";}return 0;
}

相关文章:

【算法】快排

题目 快排 思路 如果输入为0或1直接返回&#xff1b;否则取一个基准值&#xff0c;可以取中间位置&#xff0c;如果输入是有序的可以避免时间过长&#xff0c;然后移动指针&#xff0c;先让i指针右移&#xff0c;如果小于基准值就继续右移&#xff0c;j指针左移同理。如果指…...

开放签电子签章工具版 2.0 正式发布,构建全场景电子签约能力、满足复杂的签章管理场景

根据近半年开源用户和市场需求反馈&#xff0c;开放签团队推出电子签章工具版2.0版本&#xff0c;主要解决复杂的签约流程集成和电子印章授权管理场景。以API接口对外提供服务和配置一套可视化后台管理系统&#xff0c;可与业务系统无缝集成&#xff0c;用户使用起来毫无“违和…...

python和pycharm 和Anaconda的关系

好的&#xff0c;下面我会详细说明 Python、PyCharm 和 Anaconda 三者的关系&#xff0c;并逐一解释它们的功能和作用。 1. Python&#xff08;编程语言&#xff09; 定义&#xff1a;Python 是一种高级编程语言&#xff0c;设计简洁&#xff0c;易于学习&#xff0c;且功能强…...

DeepSeek V3和R1

DeepSeek V3 和 R1 是深度求索&#xff08;DeepSeek&#xff09;推出的两款大模型&#xff0c;基于混合专家架构&#xff08;MoE&#xff09;&#xff0c;但在设计目标、训练方法和应用场景上存在显著差异。以下是两者的详细对比与补充内容&#xff1a; DeepSeek V3和R1 一、模…...

JavaScript数组-获取数组中的元素

在JavaScript中&#xff0c;数组是一种非常实用的数据结构&#xff0c;它允许我们将多个值存储在一个单独的变量中。无论是数字、字符串还是对象&#xff0c;都可以作为数组的元素。获取数组中的特定元素是操作数组的基础技能之一。本文将详细介绍如何在JavaScript中获取数组中…...

SSE:用于流式传输的协议

一.什么是SSE SSE协议是一种基于http协议的单向通信协议&#xff0c;服务端可以向客户端发送数据&#xff0c;但是客户端不能向服务器发送数据。客户端通过创建一个到服务器的单向连接来监听事件。可以将一次性返回数据包改为流式返回数据。SSE协议支持断线重连&#xff0c;也支…...

Aseprite详细使用教程(7)——切片工具

1.名词解释 快捷键&#xff1a;ShiftC 切片工具功能&#xff08;了解即可&#xff09;&#xff1a; &#xff08;1&#xff09;优化资源加载: 将较大的图像切成多个较小的切片&#xff0c;可减小单个文件大小&#xff0c;在网页或游戏等场景中&#xff0c;能显著提升加载速度…...

航空公司客户价值分析

目录 1 目的 2 方法 3 源代码 4 结果 5 扩展 1 目的 ①借助航空公司客户数据&#xff0c;对客户进行分类&#xff1b; ②对不同的客户类别进行特征分析&#xff0c;比较不同类别的客户的价值&#xff1b; ③针对不同价值的客户类别制定相应的营销策略&#xff0c;为其提供个性…...

基于开源Odoo、SKF Phoenix API与IMAX-8数采网关的圆织机设备智慧运维实施方案 ——以某纺织集团圆织机设备管理场景为例

一、方案背景与需求分析 1.1 纺织行业设备管理痛点 以某华东地区大型纺织集团为例&#xff0c;其圆织机设备管理面临以下挑战&#xff1a; 非计划停机损失高&#xff1a;圆织机主轴轴承故障频发&#xff0c;2024年单次停机损失达12万元&#xff08;停机8小时导致订单延误&am…...

LLM 架构

LLM 分类 : 自编码模型 (encoder) : 代表模型 : BERT自回归模型 (decoder) : 代表模型 : GPT序列到序列模型 (encoder-decoder) : 代表模型 : T5 自编码模型 (AutoEncoder model , AE) 代表模型 : BERT (Bidirectional Encoder Representation from Transformers)特点 : Enc…...

Word Embeddings

Count-based Approach Term-document matrix: Document vectors Two ways to extract information from the matrix: Column-wise: a document is represented by a |V|-dim vector (V: vocabulary) Widely used in information retrieval: find similar documents 查找類似…...

相机开发调中广角和焦距有什么不一样

在相机中,调整广角和调整焦距是两个不同的概念,它们的作用和实现方式也不同。以下是两者的详细对比和解释: 1. 调整广角 定义 广角是指相机的视野范围(Field of View, FOV)。调整广角实际上是调整相机的视野范围。更广的视野意味着可以捕捉到更多的场景内容(更宽的画面)…...

krpano学习笔记,端口修改,krpano二次开发文档,krpano三维div信息展示,krpano热点显示文字

一、修改krpano端口 .\tour_testingserver -port8085 &#xff0c;修改端口&#xff0c;指定启动时的端口 二、给krpano添加div展示信息 和场景一起转动&#xff0c;不是layer&#xff0c;layer是固定的&#xff0c;没啥用。 主要是onloaded里面的1个方法。 <action name…...

Jenkins 给任务分配 节点(Node)、设置工作空间目录

Jenkins 给任务分配 节点(Node)、设置工作空间目录 创建 Freestyle project 类型 任务 任务配置 Node 打开任务-> Configure-> General 勾选 Restrict where this project can be run Label Expression 填写一个 Node 的 Label&#xff0c;输入有效的 Label名字&#x…...

深入解析iOS视频录制(二):自定义UI的实现

深入解析 iOS 视频录制&#xff08;一&#xff09;&#xff1a;录制管理核心MWRecordingController 类的设计与实现 深入解析iOS视频录制&#xff08;二&#xff09;&#xff1a;自定义UI的实现​​​​​​​ 深入解析 iOS 视频录制&#xff08;三&#xff09;&#xff1a;完…...

跳表的C语言实现

跳表&#xff08;Skip List&#xff09;是一种基于链表的动态数据结构&#xff0c;用于实现高效的查找、插入和删除操作。它通过引入多级索引来加速查找过程&#xff0c;类似于多级索引的有序链表。跳表的平均时间复杂度为 O(logn)&#xff0c;在某些场景下可以替代平衡树。 以…...

Java Web开发实战与项目——Spring Security与权限管理实现

Web应用中&#xff0c;权限管理是系统安全的核心部分&#xff0c;确保用户只能访问他们被授权的资源。Spring Security是Spring框架中的一个安全框架&#xff0c;它提供了强大的认证和授权功能&#xff0c;用于实现用户认证和权限控制。本章节将详细讲解如何使用Spring Securit…...

单元测试方法的使用

import java.util.Date; import org.junit.Test; /** java中的JUnit单元测试* * 步骤:* 1.选中当前项目工程 --》 右键:build path --》 add libraries --》 JUnit 4 --》 下一步* 2.创建一个Java类进行单元测试。* 此时的Java类要求:①此类是公共的 ②此类提供一个公共的无参…...

VScode内接入deepseek包过程(本地部署版包会)

目录 1. 首先得有vscode软件 2. 在我们的电脑本地已经部署了ollama&#xff0c;我将以qwen作为实验例子 3. 在vscode上的扩展商店下载continue 4. 下载完成后&#xff0c;依次点击添加模型 5. 在这里可以添加&#xff0c;各种各样的模型&#xff0c;选择我们的ollama 6. 选…...

flink写入hdfs数据如何保证幂等的?

在 Flink 中使用 HDFS Connector 将数据写入 HDFS 时&#xff0c;保证幂等性是一个重要的需求&#xff0c;尤其是在数据可靠性要求较高的场景下。以下是详细介绍如何通过 Flink 和 HDFS 的特性以及一些设计上的优化来实现幂等性。 一、Flink 的 Checkpoint 机制 Flink 的 Chec…...

告别龟速传输!手把手教你用Xftp 7的并行传输和FXP协议,把文件同步速度拉满

解锁Xftp 7极速传输&#xff1a;并行技术与FXP协议实战指南 当你在凌晨三点盯着进度条缓慢爬升&#xff0c;服务器间几个GB的日志文件传输才完成30%时&#xff0c;是否想过那些被浪费的时间本可以创造更多价值&#xff1f;作为IT从业者&#xff0c;我们常陷入一个误区——认为文…...

从单图到分层PSD:Layerdivider如何用AI魔法解放设计师的创造力

从单图到分层PSD&#xff1a;Layerdivider如何用AI魔法解放设计师的创造力 【免费下载链接】layerdivider A tool to divide a single illustration into a layered structure. 项目地址: https://gitcode.com/gh_mirrors/la/layerdivider 你是否曾经面对一张精美的插画…...

Flink自定义Source/Sink避坑指南:我踩过的性能陷阱和稳定性雷区(附调优参数)

Flink自定义Source/Sink避坑指南&#xff1a;我踩过的性能陷阱和稳定性雷区&#xff08;附调优参数&#xff09; 凌晨三点被报警电话惊醒&#xff0c;发现Flink作业已经连续重启了7次——这是我第一次在生产环境部署自定义Source时遭遇的噩梦。本文将分享从血泪教训中总结的实…...

STM32CubeMX生成MDK工程后,AC6编译器总报‘未使用返回值’警告?手把手教你精准屏蔽(附AC5/IAR对比)

STM32CubeMX生成MDK工程后AC6编译器警告处理全攻略 当你用STM32CubeMX生成MDK工程后切换到AC6编译器&#xff0c;突然冒出一堆"未使用返回值"的警告&#xff0c;而同样的代码在AC5下却干干净净——这场景是不是很熟悉&#xff1f;作为从AC5迁移到AC6的必经之路&#…...

5大架构革新:UiCard框架如何重构卡牌游戏UI开发范式

5大架构革新&#xff1a;UiCard框架如何重构卡牌游戏UI开发范式 【免费下载链接】UiCard Generic UI for card games like Hearthstone, Magic Arena and Slay the Spire... 项目地址: https://gitcode.com/gh_mirrors/ui/UiCard UiCard是一个专为Unity引擎设计的卡牌游…...

电子制造企业设施升级与产能优化实践

1. 电子制造企业的设施升级战略解析当我在电子制造行业深耕十五年后&#xff0c;深刻认识到一个真理&#xff1a;生产线上的每一寸空间都是利润的战场。最近研究Epec公司的设施升级案例时&#xff0c;发现这个投资50万美元的改造项目完美诠释了现代电子制造企业的升级逻辑——不…...

告别‘笨重’UNet:手把手教你用MALUNet在ISIC数据集上实现轻量级皮肤病变分割

轻量级医学影像分割实战&#xff1a;MALUNet在皮肤病变识别中的高效应用 医学影像分析领域正经历一场从"重量"到"重效"的范式转变。当大多数研究者还在追逐更高精度的复杂模型时&#xff0c;一支新兴力量正在用1/44的参数量实现同等甚至更优的分割效果——…...

RAG从能跑到好用:收藏这份程序员必备大模型落地指南

本文分享了RAG系统从Demo阶段到生产环境落地过程中的关键难点与解决方案。核心内容包括&#xff1a;提升知识库质量的数据准备技巧、优化检索召回的模型选型与混合检索策略、精准Query理解的意图识别方法&#xff0c;以及强化生成阶段的Prompt约束与置信度评估。文章强调RAG系统…...

数据库实施是数据库设计完成后,将设计成果转化为实际可运行数据库系统的过程,是软件系统开发中的关键环节

数据库实施是数据库设计完成后&#xff0c;将设计成果转化为实际可运行数据库系统的过程&#xff0c;是软件系统开发中的关键环节。该阶段主要包括建立实际数据库结构和数据加载两大核心任务&#xff0c;以下是详细知识点说明&#xff1a; 1. 数据库实施的基本概念 数据库实施是…...

手把手教你读懂A2L文件:从CDM Studio的Example.a2l文件入手,搞懂汽车ECU标定数据

手把手教你读懂A2L文件&#xff1a;从CDM Studio的Example.a2l文件入手&#xff0c;搞懂汽车ECU标定数据 第一次打开A2L文件时&#xff0c;那种扑面而来的代码块和嵌套结构往往让人望而生畏。作为汽车电子工程师的"数据护照"&#xff0c;A2L文件承载着ECU与标定工具…...