随笔分类 -  数据结构与算法

摘要:算法时间复杂度的常用递推关系 递归关系对于分析算法时间复杂度非常有用,下表总结了常用的地推关系: 递推关系 复杂度结果 示例 T(n)=T(n/2) + O(1) T(n) = O(logn) 二分查找 T(n)=T(n-1) + O(1) T(n) = O(n) 线性查找 T(n)=2T(n/2) 阅读全文
posted @ 2021-06-27 22:15 geeks_reign 阅读(224) 评论(0) 推荐(0)
摘要:递归是一种针对使用简单的循环难以编程实现的问題,提供优雅解决方案的技术。 阶乘 许多数学函数都是使用递归来定义的,比如整数的阶乘可以如下定义 \[ n! = 1 \quad \text{if n is 0 else}\quad n * (n-1)! \] 假定计算n!的方法是factorial(n) 阅读全文
posted @ 2021-05-30 11:56 geeks_reign 阅读(158) 评论(0) 推荐(0)
摘要:BitMap概述 本文介绍 BitMap 算法的应用背景,算法思想和相关实现细节。 概括而言,BitMap 主要用来解决海量数据中元素查询,去重、以及排序等问题。这里对海量数据场景的强调,似乎暗示了这个算法对空间的利用相当的精巧和经济,事实确实如此。 BitMap算法 本来数据序列的排序是一个平凡的 阅读全文
posted @ 2020-06-06 22:36 geeks_reign 阅读(2453) 评论(0) 推荐(0)