100种算法【Python版】第35篇——PageRank算法

本文目录 1 算法说明 1.2 算法核心 1.2 算法步骤 2 示例说明 3 python代码 1 算法说明 PageRank算法是由拉里·佩奇和谢尔盖·布林在1996年提出的一种用于网页排名的算法,最初用于谷歌搜索引擎。它通过分析网页之间的链接结构来评估网页的重要性,从而改善搜索结果的相关性与质量。 1.2 算法核心 PageRank的核心思想是:一个网页的重要性不仅取决于它自身的质量,还取决于指向它的其他...

Ubuntu18.04服务器非root用户在虚拟环境下的python版本设定

3.9.16 yyy是你的虚拟环境名字 创建之后,激活虚拟环境 source activate yyy或者conda activate yyy 激活之后,输入python 却发现仍然是之前设定好的python版本,也就是3.8.0,而不是3.9.16 这是因为在bashrc配置文件中,在上篇博客中写死了python的环境,并且Path环境路径里,python3.8.0的安装路径优先级高,因此只需要改两步 第...

100种算法【Python版】第16篇——Rabin-Karp算法

本文目录 1 算法原理 2 实现步骤 3 算法示例 4 python代码 5 应用领域 6 优势与局限 6.1 优势 6.2 局限 1 算法原理 Rabin-Karp算法是一种用于字符串匹配的算法,利用哈希函数来快速判断子串是否匹配,非常适合多模式匹配。 核心概念 哈希函数:将字符串转化为整数(哈希值),使比较更高效。 滚动哈希:通过移出前一个字符和加入后一个字符更新哈希值,从而避免重复计算。 匹配验证:当子...

100种算法【Python版】第19篇——Kruskal’s 算法

本文目录 1 算法原理及步骤 2 生成迷宫的逻辑 3 python代码 4 算法应用 1 算法原理及步骤 Kruskal’s 算法用于寻找无向图的最小生成树。它通过逐步选择最小权重的边,确保在不形成环的情况下连接所有节点。 原理 贪心策略:从权重最小的边开始选择,逐步构建生成树。 避免环路:使用并查集(Union-Find)数据结构来检测并避免环路。 实现步骤 (1)初始化: 将每个节点作为一个独立的集合。 ...

100种算法【Python版】第21篇——Wilson算法

本文目录 1 算法原理及步骤 2 迷宫实现步骤 3 python代码 4 算法应用 1 算法原理及步骤 Wilson算法是一种用于生成完美迷宫的算法,它的主要特点是生成的迷宫无偏且随机。这意味着所有可能的迷宫结构生成的概率相等。它使用了“随机游走和环消除”的方法,确保每个单元格都被访问,并且没有循环路径。 算法流程 (1)初始化: 创建一个全是墙的网格。 随机选择一个单元格作为已访问的起点。 (2)随机游走:...

100种算法【Python版】第6篇——群体智能优化算法之粒子群优化

韩信点兵 群体智能优化算法介绍 1 粒子群优化 1.1 算法原理 1.2 算法特点 1.2 算法步骤 2 算法应用 2.1 带有约束的复杂函数极值求解 2.1.1 问题描述 2.1.2 python代码 2.1.3 代码思路说明 2.2 投资组合优化配比问题 2.2.1 问题描述 2.2.2 python代码 2.2.3 代码逻辑说明 3 算法改进思路 群体智能优化算法介绍 群体智能优化算法是一类基于自然界中...

100种算法【Python版】第8篇——群体智能优化算法之人工蜂群算法

本文目录 1 人工蜂群算法 1.1 算法原理 1.2 核心特点 1.3 实现步骤 1.4 可以解决的问题 2 算法示例说明:复杂函数计算极值 2.1 问题描述 2.2 人工蜂群的思路 2.3 python代码 3 算法应用 3.1 带有约束的三元函数极值 3.1.1 问题描述 3.1.2 python代码 3.1.3 代码逻辑说明 3.2 多产品生产调度整数规划问题 3.2.1 问题描述 3.2.2 pyth...

数据结构编程实践20讲(Python版)—10B+树

本文目录 10 B+树(B+ Tree) S1 说明 S2 B+树和B树的区别 S3 示例 S4 B+树的应用Python代码 应用1:数据库索引 应用2:文件系统的目录管理 应用3:有序键值存储 往期链接 10 B+树(B+ Tree) S1 说明 1. 数据结构 B+树是一种自平衡的树数据结构,主要用于数据库和文件系统中,具有以下特征: 节点结构: 内部节点:仅存储键,用于指引搜索。 叶子节点:存储实际的...

数据结构编程实践20讲(Python版)—17散列

本文目录 17 散列(Hashing) S1 说明 特点 应用领域 S2 示例:字符串哈希 S2 示例:文件、图片哈希 S3 应用1:食品安全追溯 S4 应用2:在线内容版权保护 S5 应用3:社交媒体内容审核 往期链接 17 散列(Hashing) S1 说明 散列是一种将输入数据(通常称为键)转换为固定大小的字符串或数字的过程,通常称为散列值或哈希值。散列函数是执行此转换的算法,其输出是一个唯一的哈希码,...

100种算法【Python版】第48篇——计数排序

本文目录 1 算法步骤 2 算法示例 3 python代码 3.1 仅支持整数 3.1.1 代码说明 3.2 支持浮点数 3.2.1 代码说明 4 复杂度分析 4.1 时间复杂度: 4.2 空间复杂度: 计数排序(Counting Sort)是一种基于整数键值的非比较排序算法。它的核心思想是通过计数每个元素出现的次数,利用这些计数来确定每个元素在排序后数组中的位置。计数排序适用于范围较小的整数排序,时间复杂度...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.007666(s)
2024-11-07 13:57:56 1730959076