天天看点

普林斯顿公开课 算法1-11:并查集的应用应用渗透问题

游戏中会用到。

最近共同祖先

等价有限状态机

物理学Hoshen-Kopelman算法:就是对网格中的像素进行分块

Hinley-Milner多态类型推断

Kruskai最小生成树

Fortran等价语句编译

形态学开闭属性

Matlab中关于图像处理的bwlabel函数

普林斯顿公开课 算法1-11:并查集的应用应用渗透问题

一个N×N的矩阵,判断顶部和底部是否连通就是渗透问题。

下图中左侧的矩阵能渗透,右侧矩阵不能渗透。

普林斯顿公开课 算法1-11:并查集的应用应用渗透问题

渗透问题在电学、流体力学、社会交际中都有应用。

在游戏中可能需要生成一张地图,但是作为地图肯定是需要连通的。那么如何保证生成的地图一定是连通的呢?下图展示了地图生成的过程,白点表示能够到达的地方,黑点表示障碍物,蓝点表示能够连通的地方。生成地图的时候就是不断增加白点,直到上下能够连通为止。

普林斯顿公开课 算法1-11:并查集的应用应用渗透问题

为了判断能否渗透,计算的过程中会增加一个虚拟的节点,这样就把渗透问题简化成判断两个节点能否连通。下图展示了虚拟节点示意图。

普林斯顿公开课 算法1-11:并查集的应用应用渗透问题

继续阅读