优化 - 排序算法
一、概念
| 冒泡排序 | 从左往右比较相邻的两个元素,右比左小就换位,这样最大值就出现在了右边最后一个元素上,再从左边第一个元素开始往右比较到倒数第二个元素,如此重复... |
| 选择排序 | 通过线性查找(从左往右挨个查找)从元素中选出最小值,跟左边第一个元素换位(第一个元素就是最小的就直接进行第二轮),再在剩下待排序的元素中找出最小值,跟左边第二个元素换位,如此重复... |
| 插入排序 | 以左侧第一个元素为参照点,依次用右侧未排序的元素与左侧相比较,比左侧更小就互换位置,直接比参照点大就作为新的参照点继续,直到参照点右侧元素为0。 |
| 快速排序 | 随便选择一个元素作为参照点,将剩下的元素按照比参照点大和小分为两组,将参照点插入在这两组中间,接着对这两组分别递归操作,直到分组中只剩一个元素。 |
二、代码
2.1 冒泡排序
2.2 选择排序
2.3 插入排序
2.4 快速排序
相关文章:
优化 - 排序算法
一、概念 冒泡排序从左往右比较相邻的两个元素,右比左小就换位,这样最大值就出现在了右边最后一个元素上,再从左边第一个元素开始往右比较到倒数第二个元素,如此重复...选择排序 通过线性查找(从左往右挨个查找&#…...
Python实战:深拷贝与浅拷贝
1. 引言 在Python中,对象是通过对内存中的数据进行引用来实现的。当我们创建一个对象并将其赋值给另一个变量时,实际上是将这个对象的引用复制给了另一个变量。这意味着,如果原始对象发生改变,引用该对象的变量也会受到影响。为了…...
rollup打包起手式
使用Rollup打包JavaScript rollup是一款小巧的javascript模块打包工具,更适合于库应用的构建工具;可以将小块代码编译成大块复杂的代码,基于ES6 modules,它可以让你的 bundle 最小化,有效减少文件请求大小,vue在开发的时候用的是webpack,但是…...
【笔记】语言实例比较 3. 无重复字符的最长子串 C++ Rust Java Python
语言实例比较 3. 无重复字符的最长子串 C Rust Java Python C C: 9ms O ( N 2 ) O(N^2) O(N2), 8.68MB mem O ( 1 ) O(1) O(1) 滑动窗口循环 class Solution { public:int lengthOfLongestSubstring(const string s) {//s[start,end) 前面包含 后面不包含int res(0);for (…...
int的大小你知道时4个字节,那么类的大小你知道怎么计算吗?
文章目录 1、如何计算类对象的大小2、类对象的存储方式猜测3、结构体内存对齐规则1、如何计算类对象的大小 class A { public: void PrintA() { cout<<_a<<endl; } private: char _a; };问题: 类中既可以有成员变量,又可以有成员函数,那么一个类的对象中包含了…...
OpenCV学习笔记(十一)——利用Sobel算子计算梯度
Sobel算子是基于一阶导数的离散差分算子,其中Sobel对于像素值的变化是十分敏感的,在进行边缘检测的时候,Sobel算子常用于对周围像素的重要性进行检测。 Sobel算子包括检验水平方向的算子和检测竖直方向的算子 计算机梯度值的操作如下&#x…...
扩展一下BenchmarkSQL,新增支持ASE/HANA/DB2/SQLServer,可以随便用了
1 背景 提到数据库的性能,自然就避不开性能测试。有专用于测试OLTP的,也有偏重于OLAP的。本文介绍的BenchmarkSQL就属于测试OLTP中的一个,基于TPCC的。网上有很多介绍TPC*的相关测试的文章,大家可以自行脑补。而PostgreSQL自带的pgbench是属于TPCC的前一个基准测试程序,偏…...
Android 静默安装成功后自启动
近期开发上线一个常驻app,项目已上线,今天随笔记录一下静默安装相关内容。我分三篇静默安装(root版)、静默安装(无障碍版)、监听系统更新、卸载、安装。 先说说我的项目需求:要求app一直运行&am…...
计算机二级真题讲解每日一题:《format格式化》
描述 在右侧答题模板中修改代码,删除代码中的横线,填写代码,完成如下功能。 接收用户输入的一个小于 20的正整数,在屏幕上逐行递增显示从 01 到该正整数,数字显示的宽度为 2,不足位置补 0,后面追…...
RabbitMQ问题
如何实现顺序消费? 消息放入到同一个队列中消费 如何解决消息不丢失? 方案: 如上图:消息丢失有三种情况,解决了以上三种情况就解决了丢失的问题 1、丢失1--->消息在到达交换机的时候;解决࿱…...
flutter->Scaffold左侧/右侧侧边栏和UserAccountsDrawerHeader的使用
//appBar的 leading/actions 和 Scaffold的drawer/endDrawer 冲突只能存在一个 import package:flutter/material.dart;void main() {runApp(MyApp()); }class MyApp extends StatelessWidget {const MyApp({super.key});overrideWidget build(BuildContext context) {retur…...
vulnhub prime1通关
目录 环境安装 1.信息收集 收集IP 端口扫描 目录扫描 目录文件扫描 查找参数 打Boss 远程文件读取 木马文件写入 权限提升 方法一 解锁密钥 方法二: linux内核漏洞提权 总结 环境安装 Kali2021.4及其prime靶机 靶机安装:Prime: 1 ~ Vul…...
JVM快速入门(1)JVM体系结构、运行时数据区、类加载器、线程共享和独享、分区、Java对象实例化
5.1 JVM体系结构 线程独占区-程序计数器(Program Counter Register) 程序计数器是一块较小的内存空间,它可以看做是当前线程所执行的字节码的行号指示器;在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数…...
CSS3新属性(学习笔记)
一、. 圆角 border-radius:; 可以取1-4个值(规则同margin) 可以取px和% 一般用像素,画圆的时候用百分比:border-radius:50%; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8&q…...
41-Vue-webpack基础
webpack基础 前言什么是webpackwebpack的基本使用指定webpack的entry和output 前言 本篇开始来学习下webpack的使用 什么是webpack webpack: 是前端项目工程化的具体解决方案。 主要功能:它提供了友好的前端模块化开发支持,以及代码压缩混淆、处理浏览…...
数据仓库的分层理论
数据仓库的分层理论是为了更好地组织和管理数据,支持复杂的数据分析和决策支持。在这一理论中,数据仓库被分为多个层次,每个层次都有其特定的作用和设计原则。以下是每一层的详细介绍,以及以销售人员为例的Doris建表实例。 ODS层…...
MySQL 8.0-索引- 不可见索引(invisible indexes)
概述 MySQL 8.0引入了不可见索引(invisible index),这个在实际工作用还是用的到的,我觉得可以了解下。 在介绍不可见索引之前,我先来看下invisible index是个什么或者定义。 我们依然使用拆开来看,然后再把拆出来的词放到MySQL…...
Uibot6.0 (RPA财务机器人师资培训第3天 )财务招聘信息抓取机器人案例实战
训练网站:泓江科技 (lessonplan.cn)https://laiye.lessonplan.cn/list/ec0f5080-e1de-11ee-a1d8-3f479df4d981https://laiye.lessonplan.cn/list/ec0f5080-e1de-11ee-a1d8-3f479df4d981https://laiye.lessonplan.cn/list/ec0f5080-e1de-11ee-a1d8-3f479df4d981(本博…...
Eureka和Nacos的关系
目录 它们的比较: 结论: Eureka和Nacos都是服务发现和注册中心,它们在微服务架构中扮演着关键角色,但它们是由不同的组织开发的,服务于类似但不完全相同的目的。以下是它们之间的关系: Eureka:…...
极简自建web视频会议,私有云,rtmp/rtsp/webrtc一键参会直播会议互动方案
随着视频互动深入工作日常,很多客户需要自建一个会议,监控的交互平台,目前外面不管是开源还是非开源的平台,都是极为复杂,一般linux安装库关联部署复杂,非技术人员根本没办法使用,不方便集成部署…...
Chatbox:构建企业级AI助手客户端的3个架构设计关键
Chatbox:构建企业级AI助手客户端的3个架构设计关键 【免费下载链接】chatbox Powerful AI Client 项目地址: https://gitcode.com/GitHub_Trending/ch/chatbox Chatbox作为一款开源的多模型AI桌面客户端,通过创新的技术架构设计,解决了…...
3分钟掌握PHP高效IP地址定位技巧:ip2region完全使用指南
3分钟掌握PHP高效IP地址定位技巧:ip2region完全使用指南 【免费下载链接】ip2region PHP版本的离线IP地址定位库 项目地址: https://gitcode.com/gh_mirrors/ip2/ip2region 在当今互联网应用中,IP地址定位是许多业务场景的基础功能,无…...
终极TwitchAdSolutions架构解析:从声明选项到智能流信息管理
终极TwitchAdSolutions架构解析:从声明选项到智能流信息管理 【免费下载链接】TwitchAdSolutions 项目地址: https://gitcode.com/gh_mirrors/tw/TwitchAdSolutions TwitchAdSolutions是一款强大的广告拦截工具,通过声明选项配置、Worker拦截和智…...
SiameseUIE中文-base实战教程:Python requests调用7860端口抽取接口示例
SiameseUIE中文-base实战教程:Python requests调用7860端口抽取接口示例 1. 引言:告别复杂配置,三步搞定信息抽取 你是不是也遇到过这样的场景?面对一堆非结构化的文本数据,比如新闻、报告、用户评论,想从…...
SpringBoot的生命周期原理分析之一SpringBoot准备容器与环境
目录 1.SpringBootApplication准备 1.1SpringApplication创建 1.2.1保存主配置源 1.2.2推断Web环境 1.2.3设置初始化器 1.2.4设置监听器 1.2.5确定主启动类 1.2.6扩展了解:SpringBoot的发展 1.2SpringBootApplication启动 1.2.1启动计时与全局异常处理机制…...
比迪丽SDXL模型GPU算力适配:A10/A100/V100/T4多卡实测报告
比迪丽SDXL模型GPU算力适配:A10/A100/V100/T4多卡实测报告 1. 引言 如果你玩过AI绘画,肯定遇到过这样的问题:同一个模型,为什么在别人的电脑上跑得飞快,在自己这儿却慢如蜗牛?生成一张图要等好几分钟&…...
StructBERT情感分类镜像保姆级教程:GPU加速中文情感分析快速上手
StructBERT情感分类镜像保姆级教程:GPU加速中文情感分析快速上手 10分钟学会部署和使用专业级中文情感分析模型,让AI帮你读懂用户情绪 1. 前言:为什么要用StructBERT做情感分析? 你有没有遇到过这些情况? 电商平台上…...
TranslateGemma快速部署:两张显卡搞定120亿参数翻译模型
TranslateGemma快速部署:两张显卡搞定120亿参数翻译模型 1. 引言:当翻译遇上大模型,本地部署的挑战 想象一下,你需要翻译一份技术合同、一篇前沿的学术论文,或者一份包含大量专业术语的产品手册。你打开在线翻译工具…...
外贸 SEO 中如何进行跨境关键词研究
外贸 SEO 中如何进行跨境关键词研究 在当今全球化的商业环境中,外贸 SEO(搜索引擎优化)已成为跨境电商企业提升品牌知名度和销售额的重要手段。而在外贸 SEO 中,跨境关键词研究是关键步骤。如何进行有效的跨境关键词研究呢&#…...
云南塑料管公司哪家好
在云南,塑料管行业面临着诸多挑战,这些问题严重影响了工程质量和使用体验。行业痛点凸显塑料管的地域适配性差、产品品质参差不齐、性价比失衡、服务不完善以及供应链不稳定是当前行业普遍面临的难题。云南山区多、昼夜温差大、雨季漫长且软土地基普遍&a…...
