🍠Python种群邻接矩阵彗星风筝进化图算法
Last updated
Last updated
Python | 生物 | 种群 | | 图论 | 概率 | 算法 |
🏈指点迷津 | Brief🎯生成种群进化时间和概率数据 | 🎯力导向算法绘图 | 🎯彗星风筝图算法 | 🎯绕行图算法 | 🎯广义星形图算法 | 🎯耦合星图算法 | 🎯启发式基因算法
无向图的特征:
无向图中的边本质上是双向的。
在无向图中,不存在“父”或“子”顶点的概念,因为没有到边的方向。
无向图可能包含环,环是将顶点连接到自身的边。
每个顶点的度数与与其连接的边的总数相同。
无向图的应用:
社交网络:无向图用于建模社交网络,其中人们由节点表示,他们之间的连接由边表示。
交通流优化:交通流优化使用无向图来模拟道路网络上的车辆流量。图的顶点表示交叉路口或路段,边表示它们之间的连接。该图可用于优化交通流量和规划交通基础设施。
网站分析:无向图可用于分析互联网上网页之间的链接。每个网页由一个顶点表示,网页之间的每个链接由一条边表示。
给定一个无向图,任务是逐行打印所有连接的分量。
输出
算法是:
将所有顶点初始化为未访问过。
对每个顶点 v 执行以下操作:
如果之前没有访问过v,则调用深度优先遍历。并打印换行符以在新行中打印每个分量
将 v 标记为已访问并打印 v。
对于v的每一个相邻的u,如果u没有被访问过,则递归调用深度优先遍历。
代码实现:
输出:
使用不相交集并集算法:
声明一个大小为 V 的数组 arr[],其中 V 是节点总数。
对于数组 arr[] 的每个索引 i,该值表示第 i 个顶点的父节点是谁。
将每个节点初始化为其自身的父节点,然后在将它们添加在一起时相应地更改其父节点。
从0到V遍历节点:
对于作为其父节点的每个节点,启动该算法。
打印该不相交集合的节点,因为它们属于一个分量。
输出: