数据结构-排序(来自于王道)

排序的基本概念

插入排序

在这个算法中,除了输入的数组本身,没有使用额外的数据结构来存储数据,所有的操作都是在原数组上进行的。因此,无论输入数组的大小 n 是多少,算法执行过程中所占用的额外空间是固定的,即空间复杂度为 O (1)。

如果空间复杂度是 O (n),通常意味着算法在执行过程中会随着输入数据规模 n 的增加而线性地增加额外的存储空间。例如,如果算法中使用了一个长度为 n 的辅助数组,那么其空间复杂度就是 O (n)。但在这个插入排序的实现中,并没有这种情况。

希尔排序

冒泡排序

快速排序

简单选择排序

堆排序

堆的插入删除

归并排序

基数排序(期末不考)

相关推荐
要做朋鱼燕1 小时前
【数据结构】用堆解决TOPK问题
数据结构·算法
秋难降2 小时前
LRU缓存算法(最近最少使用算法)——工业界缓存淘汰策略的 “默认选择”
数据结构·python·算法
Jayyih4 小时前
嵌入式系统学习Day19(数据结构)
数据结构·学习
DdduZe4 小时前
8.19作业
数据结构·算法
PyHaVolask5 小时前
链表基本运算详解:查找、插入、删除及特殊链表
数据结构·算法·链表
1白天的黑夜16 小时前
链表-2.两数相加-力扣(LeetCode)
数据结构·leetcode·链表
花开富贵ii6 小时前
代码随想录算法训练营四十六天|图论part04
java·数据结构·算法·图论
熬了夜的程序员6 小时前
【LeetCode】16. 最接近的三数之和
数据结构·算法·leetcode·职场和发展·深度优先
Miraitowa_cheems6 小时前
LeetCode算法日记 - Day 15: 和为 K 的子数组、和可被 K 整除的子数组
java·数据结构·算法·leetcode·职场和发展·哈希算法
_poplar_8 小时前
08.5【C++ 初阶】实现一个相对完整的日期类--附带源码
c语言·开发语言·数据结构·c++·vscode·算法·vim