算法
文章平均质量分 85
不良手残
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
位图法(BitMap)深度解析
位图法是一种高效的空间优化数据结构,利用比特位表示元素存在状态(0/1),适用于大规模整数去重、排序和检测。其核心是通过位运算实现快速操作,空间复杂度极低(40亿整数仅需512MB)。典型应用如40亿整数去重时,位图法在内存占用和性能上显著优于哈希表。但仅适用于有限范围内的整数,数据稀疏时效率下降。对超大非整数数据可考虑布隆过滤器(允许误报)。位图法是处理密集型整数集的理想选择,在特定场景下具有不可替代的优势。原创 2025-06-24 16:30:50 · 1366 阅读 · 0 评论 -
时间复杂度和空间复杂度入门必备知识点
算法复杂度分析摘要 时间复杂度衡量算法执行时间随数据规模n的增长趋势,空间复杂度衡量额外内存使用情况。二者都用大O表示法,忽略系数保留最高阶项。常见时间复杂度:常数O(1)、对数O(logn)、线性O(n)、线性对数O(nlogn)、平方O(n²)、指数O(2ⁿ)。计算时需找基本操作并建立T(n)表达式。空间复杂度分析额外变量和递归深度。典型案例:冒泡排序时间O(n²)空间O(1),归并排序时间O(nlogn)空间O(n)。优化需权衡时空效率,n较小时可用简单算法,大时需高效算法。原创 2025-06-17 16:21:03 · 578 阅读 · 0 评论 -
Java实现10大经典排序算法
本文简明介绍了10种经典排序算法,涵盖冒泡、选择、插入、快速、希尔、归并、堆、计数、桶和基数排序。每种算法从定义、时间复杂度(最佳/平均/最差)、空间复杂度、稳定性及适用场景进行说明,并附Java实现代码。关键对比显示:快速排序适合通用场景(平均O(nlogn)),堆排序保证最坏情况性能,归并排序兼顾稳定性和效率,而计数/桶/基数排序适用于特定数据特征。最后给出选择建议:内存敏感用堆排序,需稳定性选归并,特定数据用非比较类算法。原创 2025-06-17 16:07:05 · 2014 阅读 · 0 评论 -
LeetCode的第75题:颜色分类
LeetCode的第75题:颜色分类。原创 2025-03-07 09:51:49 · 377 阅读 · 0 评论
分享