如何检查字典是否"connected"?



马上,这是学校作业。但是,我们被告知,如果我们不能使用循环独自提出解决方案,我们可以在线找到一个或在线找到算法,但我们应该引用它。因此,问题是,给定一个连接的字典d = {'f1':['f2'],'f2':['f3'],'f3':['f1'],我如何检查它是否已连接?词典也可以断开连接,这取决于我是否连接它是否连接并分别返回true或false。我们允许任何进口。我不要求代码,也许只是布置步骤或伪代码。另外,这些值可以包含1个以上的项目,因此可以是'f1':['f2','f6']。

仅当仅在 如果主对角包含零,则因为主对角线 表示每个顶点与自身的连接。 与此不同的任何东西都表示未完全连接的图。

这应该是您解决方案的起点。

您可以列出连接到词典中任何其他项目的字典项目的键,

  • 第一阶段将如下:从仅原始字典的第一项关键。检查是否钥匙或该项目的值类似于另一个的值或键项目。将这些键添加到此列表中。这是钥匙的列表连接到第一个项目的项目。

  • 第二阶段:创建另一个列表,从这次开始以关键字典中的第二个项目。与第一阶段类似,添加在其余字典中列出连接项目的键,
    包括第一个。

  • 第三阶段:转到下一个项目,并在阶段做同样的事情
    二。如您所见,您将拥有项目键的列表
    链接到与
    中所有其他项目进行比较的项目字典。然后,您可以计算您所拥有的组(阶段)数量,
    这应该等于字典中的项目数。

  • 最后,您必须检查小组是否连续链接
    一组到下一组,每次至少一项(由键)。

  • 如果此系列链接连接了所有的键,则
    我想整个词典都链接了。您可能必须尝试一个号码排列(在哪里更改链接组的顺序)。

最新更新