算法系列
文章平均质量分 93
算法系列,深入解析每一个算法,从概念到示例,让我们一起努力,成为更好的自己
颜淡慕潇
CSDN专家博主,CSDN内容合伙人,新星计划导师,全栈领域优质创作者,阿里云专家博主/星级博主
专注于分享后端领域技术,承蒙厚爱,感谢支持!
希望和大家一起努力,成为更好的自己!
展开
-
决策树算法:原理及实例应用
决策树算法是一种监督式机器学习算法,它通过构建一个树状的决策模型来进行分类和预测。决策树由节点(node)和边(branch)组成,每个内部节点代表一个特征属性的测试,每个分支代表一个测试输出,每个叶节点代表一个分类结果。原创 2024-08-08 10:29:26 · 3415 阅读 · 11 评论 -
【TF-IDF|1】深入解析TF-IDF算法—基础介绍
通过上述步骤,我们实现了TF-IDF算法的基础版本。这种算法在文本挖掘和信息检索中广泛应用,用于评估词语的重要性,从而更好地进行文本分析和搜索引擎优化。通过上述优化和扩展,我们不仅实现了基础的TF-IDF算法,还通过使用现成的库(如)提升了计算效率,并扩展了应用场景(如文档相似度计算)。TF-IDF作为一种经典的文本处理技术,广泛应用于信息检索、文本分类和自然语言处理等领域。了解其原理并掌握其实现,对于深入理解和应用文本挖掘技术非常有帮助。原创 2024-06-15 11:09:03 · 3347 阅读 · 5 评论 -
【算法系列 | 13】深入解析查找算法之—树表查找
通过本文的介绍和示例代码,希望你能够对树表查找算法有更深入的理解和应用。它们的共同点是使用树结构来组织数据,使得查找、插入和删除操作的时间复杂度能够保持在较低的水平。它们的效率直接影响到系统的性能和用户体验。对于每个节点,其左子树所有节点的值都小于该节点的值,右子树所有节点的值都大于该节点的值。B+树和B*树是B树的常见变种,具有更高的空间利用率和查询效率。下面的Python代码展示了一个简化的二叉查找树实现,包括插入、查找和中序遍历操作。下面的Java代码展示了一个简化的红黑树实现,包括插入和查找操作。原创 2024-06-12 14:42:41 · 14261 阅读 · 5 评论 -
【算法系列 | 12】深入解析查找算法之—斐波那契查找
查找算法是计算机科学中的一类算法,用于在数据集中寻找特定值或数据项。其目标是确定数据是否存在于给定的数据结构中,并找到数据项的位置(索引)或其他相关信息。不同的查找算法适用于不同类型的数据结构,数据有序性,以及数据规模。以下是一些常见的查找算法以下是一些常见的查找算法及其应用场景:布隆过滤器(Bloom Filter):适用于判断一个元素是否存在于一个大规模的数据集中,时间复杂度为O(1),但有一定的误判率。二分查找。原创 2024-01-05 10:30:21 · 48418 阅读 · 65 评论 -
【算法系列 | 11】深入解析查找算法之—插值查找
查找算法是计算机科学中的一类算法,用于在数据集中寻找特定值或数据项。其目标是确定数据是否存在于给定的数据结构中,并找到数据项的位置(索引)或其他相关信息。不同的查找算法适用于不同类型的数据结构,数据有序性,以及数据规模。以下是一些常见的查找算法以下是一些常见的查找算法及其应用场景:布隆过滤器(Bloom Filter):适用于判断一个元素是否存在于一个大规模的数据集中,时间复杂度为O(1),但有一定的误判率。二分查找。原创 2024-01-02 13:22:30 · 17369 阅读 · 25 评论 -
【算法系列 | 10】深入解析查找算法之—线性查找
线性查找是一种简单而直观的搜索算法,一种基本的搜索算法,用于在一个集合中查找特定元素的位置或确定特定元素是否存在。适用于特定的小型数据集或无序数据集,但对于大型数据集,需要更高效的算法来提高性能。了解线性查找的原理和适用性有助于选择适当的搜索方法。原创 2023-10-13 10:17:59 · 24604 阅读 · 90 评论 -
【算法系列 | 9】深入解析查找算法之—哈希表查找
哈希表查找算法在许多应用中具有高效的性能,但它也有一些限制,如哈希冲突和不适合有序数据。选择哈希表作为查找数据结构时,需要权衡其优点和缺点,并确保选择合适的哈希函数和冲突解决方法。原创 2023-10-12 17:51:16 · 27199 阅读 · 87 评论 -
【算法系列 | 8】深入解析查找算法之—二分查找
二分查找算法(Binary Search),也称为折半查找,是一种用于在有序数据集合中查找目标元素的高效算法。它的核心思想是将查找范围逐渐缩小一半,直到找到目标元素或确定目标元素不存在为止。原创 2023-09-13 21:52:29 · 27592 阅读 · 58 评论 -
【算法系列 | 7】深入解析查找算法之—布隆过滤器
布隆过滤器(Bloom Filter)是一种概率型数据结构,用于快速判断一个元素是否可能存在于一个集合中,同时具有高效的插入和查询操作。它的原理基于位数组和哈希函数。布隆过滤器的核心是一个位数组(bit array)或称为位向量(bit vector),用于表示元素的存在状态。初始时,所有位都被置为0。原创 2023-08-07 16:37:58 · 38976 阅读 · 71 评论 -
【算法系列 | 6】深入解析排序算法之——堆排序
堆排序(Heap Sort)是一种基于堆数据结构的排序算法,其核心思想是将待排序的序列构建成一个最大堆(或最小堆),然后将堆顶元素与最后一个元素交换,再将剩余元素重新调整为最大堆(或最小堆),重复以上步骤直到所有元素都有序。原创 2023-06-13 17:07:32 · 19196 阅读 · 69 评论 -
【算法系列 | 0】深入解析算法之—专栏介绍
你只管努力,其他交给时间,时间会证明一切。文章标记颜色说明:黄色红色绿色蓝色决定开一个算法专栏,希望能帮助大家很好的了解算法。主要深入解析每个算法。我们一起努力,成为更好的自己!原创 2023-06-10 19:25:25 · 20302 阅读 · 31 评论 -
【算法系列 | 5】深入解析排序算法之——快速排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)快速排序(Quick Sort)是一种常用的排序算法,也是一种基于分治思想的排序算法。快速排序的基本思想是选取一个基准元素。原创 2023-06-11 18:35:12 · 13689 阅读 · 51 评论 -
【算法系列 | 4】深入解析排序算法之——归并排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)归并排序(Merge Sort)是一种基于分治思想的排序算法,它将待排序的数组分成两部分,分别对这两部分递归地进行排序,最后将两个有序子数组合并成一个有序数组。原创 2023-06-10 18:23:18 · 24355 阅读 · 74 评论 -
【算法系列 | 3】深入解析排序算法之——选择排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)选择排序(Selection Sort)是一种简单的排序算法,其基本原理是在未排序的元素中找到最小(或最大)的元素,然后将其放在已排序的序列的末尾。重复这个过程,直到所有元素都被排序完毕。原创 2023-06-09 22:42:06 · 13053 阅读 · 59 评论 -
【算法系列 | 2】深入解析排序算法之——插入排序
排序算法是很常见的一类问题,主要是将一组数据按照某种规则进行排序。以下是一些常见的排序算法:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)归并排序(Merge Sort)快速排序(Quick Sort)堆排序(Heap Sort)插入排序原理介绍插入排序是一种简单直观的排序算法,其原理是将一个数组分成已排序和未排序两部分。原创 2023-06-05 10:45:08 · 18000 阅读 · 99 评论 -
【算法系列 | 1】深入解析排序算法之——冒泡排序
这些排序算法各有特点,可以根据具体需求选择适合的算法。在实际应用中,常常需要综合考虑时间复杂度、空间复杂度、稳定性等因素进行选择。原创 2023-06-02 22:28:47 · 17315 阅读 · 78 评论