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

Java | 排序内容大总结

不爱生姜不吃醋⭐️
如果本文有什么错误的话欢迎在评论区中指正
与其明天开始,不如现在行动!

文章目录

  • 🌴前言
  • 🌴算法整理
  • 🌴两个结论
  • 🌴总结


🌴前言

本文内容是关于选择排序、冒泡排序、插入排序、归并排序、快速排序、堆排序的时间复杂度、空间复杂度和稳定性的总结。


🌴算法整理

排序算法时间复杂度额外空间复杂度稳定性
选择排序 O ( N 2 ) O(N^{2}) O(N2) O ( 1 ) O(1) O(1) × × ×
冒泡排序 O ( N 2 ) O(N^{2}) O(N2) O ( 1 ) O(1) O(1) √ √
插入排序 O ( N 2 ) O(N^{2}) O(N2) O ( 1 ) O(1) O(1) √ √
归并排序 O ( N ∗ l o g N ) O(N*logN) O(NlogN) O ( N ) O(N) O(N) √ √
快速排序 O ( N ∗ l o g N ) O(N*logN) O(NlogN) O ( l o g N ) O(logN) O(logN) × × ×
堆排序 O ( N ∗ l o g N ) O(N*logN) O(NlogN) O ( 1 ) O(1) O(1) × × ×

一般的排序选择:快速排序
因为快速排序经过实验它的常数项是最低的

有空间限制的话选择:堆排序

需要稳定性的话选择:归并排序

小样本量排序:使用时间复杂度为 O ( N 2 ) O(N^{2}) O(N2) 的算法,比如:插入排序

大样本量排序:使用时间复杂度为 O ( N ∗ l o g N ) O(N*logN) O(NlogN)的算法,比如:快速排序

🌴两个结论

基于比较的排序,有没有时间复杂度比 O ( N ∗ l o g N ) O(N*logN) O(NlogN) 小的排序算法:目前没有

在时间复杂度为 O ( N ∗ l o g N ) O(N*logN) O(NlogN) 下,有没有空间复杂度比 O ( N ) O(N) O(N)小的且稳定的排序算法:目前没有


🌴总结

文章本文内容是关于排序算法内容的大总结,多加练习熟能生巧。
本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!


相关文章:

Java | 排序内容大总结

不爱生姜不吃醋⭐️ 如果本文有什么错误的话欢迎在评论区中指正 与其明天开始,不如现在行动! 文章目录 🌴前言🌴算法整理🌴两个结论🌴总结 🌴前言 本文内容是关于选择排序、冒泡排序、插入排序…...

Go 语言入门指南:基础语法和常用特性解析

什么是Go语言? Go语言是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。它用批判吸收的眼光,融合C语言、Java等众家之长,将简洁、高效演绎得淋漓尽致。 Go语言语法与C相近,但功能上有&a…...

20.添加HTTP模块

添加一个简单的静态HTTP。 这里默认读者是熟悉http协议的。 来看看http请求Request的例子 客户端发送一个HTTP请求到服务器的请求消息,其包括:请求行、请求头部、空行、请求数据。 HTTP之响应消息Response 服务器接收并处理客户端发过来的请求后会返…...

Qemu 架构 硬件模拟器

Qemu 架构 硬件模拟器 Qemu 是纯软件实现的虚拟化模拟器, 几乎可以模拟任何硬件设备, 我们最熟悉的就是能够模拟一台能够独立运行操作系统的虚拟机, 虚拟机认为自己和硬件打交道, 但其实是和 Qemu 模拟出来的硬件打交道&#xff…...

通过starrocks jdbc外表查询sqlserver

1.sqlserver环境准备,使用docker环境,可以参考使用flink sqlserver cdc 同步数据到StarRocks_gongxiucheng的博客-CSDN博客 部署获得sqlserver环境; 2.获取starrocks环境,也可以通过docker部署,参考:使用…...

ArcGIS 10.5安装教程!

软件介绍: ArcGIS Desktop 10.5中文特别版是一款功能强大的GSI专业电子地图信息编辑和开发软件,ArcGIS Desktop 包括两种可实现制图和可视化的主要应用程序,即 ArcMap 和 ArcGIS Pro。ArcMap 是用于在 ArcGIS Desktop 中进行制图、编辑、分析…...

ConstraintLayout约束布局

1.进行复杂页面布局时&#xff0c;最外层的根布局不要用ConstraintLayout. 示例布局&#xff1a; <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://schemas.android.co…...

通过pyinstaller将python项目打包成exe执行文件

目录 第一步&#xff1a;安装pyinstaller 第二步&#xff1a;获取一个ico图标&#xff08;也即是自己这个exe文件最后的图标&#xff09; 第三步&#xff1a;打包 第一步&#xff1a;安装pyinstaller pip install pyinstaller 第二步&#xff1a;获取一个ico图标&#xff…...

P1068 [NOIP2009 普及组] 分数线划定

题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才&#xff0c;A 市对所有报名的选手进行了笔试&#xff0c;笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的 150 % 150\% 150% 划定&#xff0c;即如果计划录取 m m …...

应用在汽车新风系统中消毒杀菌的UVC灯珠

在病毒、细菌的传播可以说是一个让人敏感而恐惧的事情。而对于车内较小的空间&#xff0c;乘坐人员流动性大&#xff0c;更容易残留细菌病毒。车内缺少通风&#xff0c;残留的污垢垃圾也会滋生细菌&#xff0c;加快细菌的繁殖。所以对于车内消毒就自然不容忽视。 那么问题又来…...

TOOLLLM: FACILITATING LARGE LANGUAGE MODELS TO MASTER 16000+ REAL-WORLD APIS

本文是LLM系列的文章之一&#xff0c;针对《TOOLLLM: FACILITATING LARGE LANGUAGE MODELS TO MASTER 16000 REAL-WORLD APIS》的翻译。 TOOLLLMs&#xff1a;让大模型掌握16000的真实世界APIs 摘要1 引言2 数据集构建3 实验4 相关工作5 结论 摘要 尽管开源大型语言模型&…...

【JavaSpring】spring接口-beanfactory和applicationcontext与事件解耦

beanfactory 1.applicationcontext的父接口 2.是Spring的核心容器 功能 表面只有getBean&#xff0c;但实现类默默发挥了巨大作用 1.管理所有bean 2.控制反转 3.基本的依赖注入 applicationcontext 功能 1.继承了MessageSource&#xff0c;有了处理国际化资源的能力 …...

《深入理解Java虚拟机》——Java内存区域与内存溢出异常

Java内存区域与内存溢出异常 运行时数据区域程序计数器Java虚拟机栈本地方法栈Java堆方法区运行时常量池直接内存 实例堆溢出栈溢出 运行时数据区域 根据《Java虚拟机规范的规定》&#xff0c;Java虚拟机所管理的内存将会包含已下架几个运行时数据区域。 程序计数器 在Java虚…...

公众号hanniman往期精选

目录 一、AI产品分析&#xff08;10篇&#xff09; 二、AI产品经理&#xff08;10篇&#xff09; 三、AI技术&#xff08;10篇&#xff09; 四、AI行业及个人成长&#xff08;10篇&#xff09; 一、AI产品分析 1、【重点】深度 | 关于AIGC商业化的13个非共识认知&#xff08;80…...

谷粒商城----缓存与分布式锁

1、缓存使用 为了系统性能的提升&#xff0c;我们一般都会将部分数据放入缓存中&#xff0c;加速访问。而 db 承担数据落盘工作。 哪些数据适合放入缓存&#xff1f;  即时性、数据一致性要求不高的  访问量大且更新频率不高的数据&#xff08;读多&#xff0c;写少&…...

【JavaEE进阶】Spring事务和事务传播机制

文章目录 一. 什么是Spring事务二. Spring中事务的实现1. Spring编程式事务2. 声明式事务2.1 trycatch下事务不会自动回滚的解决方案2.2 Transactional 作用范围2.3 Transactional 参数说明2.4 Transactional 工作原理 三. 事务的隔离级别1. 事务的四大特性2. Spring中设置事务…...

【Hive】drop table需注意外部表

什么是内部表&#xff0c;外部表&#xff1f; 比较专业的定义&#xff1a; 外部表需要转为内部表&#xff0c;执行删除操作才能真的删表结构删表数据。否则drop table仅是删除了表数据&#xff0c;表结构还是存在的。 alter table tb_name set TBLPROPERTIES(EXTERNALfalse);…...

【2023数学建模国赛】A题定日镜场的优化设计模型建立

2023年全国大学生数学建模竞赛A题定日镜场的优化设计&#xff0c;目前已写出第四版国赛A题思路和模型详细公式&#xff0c;目录如下&#xff1a; 一、 问题重述... 1 二、 问题分析... 1 三、 模型假设... 6 四、 问题一模型的建立和求解... 6 4.1 定日镜场坐标系的建立...…...

QT 事件与信号区别

事件&#xff08;Event&#xff09;和信号&#xff08;Signal&#xff09;是两个在编程中具有不同概念和用途的术语。 事件&#xff08;Event&#xff09;&#xff1a; 事件是程序运行过程中发生的特定动作或状态改变。可以是用户输入、硬件触发、系统通知等。 事件通常由操作…...

[Vue3 博物馆管理系统] 使用Vue3、Element-plus tabs组件构建选项卡功能

系列文章目录 第一章 定制上中下&#xff08;顶部菜单、底部区域、中间主区域显示&#xff09;三层结构首页 第二章 使用Vue3、Element-plus菜单组件构建菜单 第三章 使用Vue3、Element-plus走马灯组件构建轮播图 第四章 使用Vue3、Element-plus tabs组件构建选项卡功能 [第五…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

ip子接口配置及删除

配置永久生效的子接口&#xff0c;2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...