Quick Find算法
前言:
在数学领域,有一个有意思的猜想叫做六度空间理论(Six Degrees of Separation),简单的说,就是最多通过6个人,你就可以认识到世界上的任何一个陌生人,就比如,你完全可以通过你大姨的同事的外甥的......认识到比尔盖茨。由此我们可以看出,人与人之间的联系真的十分神奇,那么,我们又是如何在代码的世界中为不同的数据建立联系呢?
正文:
如上图所示,有些点是相连的,就好像一个人的人际关系的线;然而,也有一些点是单独在一个角落,无人关心,无人问候......额,言归正传,此时,我们希望帮助0号选手走出自闭,为他介绍朋友,那么我们就可以借用一个方法叫做union,将其与其他的点连接起来。
这样,0号同学就和5姑娘 (别想多了) 认识了(connected), 顺便还搭上了富二代6号,一下子就走上了人生巅峰,可喜可贺,可喜可贺。可是,问题又来了,0怎么知道他能和6号扯上关系呢?另一个重要的方法connec