算法 | 基础 - [查找]

@

§1 各排序算法的对比

稳定性 时间复杂度 空间复杂度
选择 ×(交换时可能跨元素交换) \(O(n^2 )\) \(O(1)\)
冒泡 √(相等时不交换) \(O(n^2 )\) \(O(1)\)
插入 √(相等时不交换) \(O(n^2 )\) \(O(1)\)
归并 √(优先归并左侧) \(O(n * \log{n})\) \(O(n)\) 需要使用稳定性时使用
快速 ×(交换时可能跨元素交换) \(O(n * \log{n})\) \(O(\log{n})\) 优先选择,常数项最低
×(交换时可能跨元素交换) \(O(n * \log{n})\) \(O(1)\) 空间限制极大时使用
计数
基数

§2 算法

遍历

复杂度\(O(n)\)

二分

前提:
需要判断可以舍掉二分后的其中一边
解决全局问题需要全局有序

可以查找元素是否存在:找到即返回
可以查找最左侧的元素位置:二分到结束
复杂度\(O(\log{n})\)

二分:局部最小
数组中,某元素 i,(i-1 > i) && (i+1 > i) 即局部最小
在这里插入图片描述
复杂度\(O(\log{n})\)

posted @ 2025-05-20 14:41  问仙长何方蓬莱  阅读(7)  评论(0)    收藏  举报