java - 检查邻接矩阵中的循环?

标签 java algorithm cycle adjacency-matrix

我在 Java 中的一个方法通过

传入一个邻接矩阵
  • 1 矩阵中的值表示连接,以及
  • 0 值表示没有连接。

我的邻接矩阵代表一个无向图。

如何检查邻接矩阵是否有环?

最佳答案

有两个好的解决方案:

  1. 开始遍历(bfs,dfs,...)你的图,如果你两次访问一个节点,你的图中有循环。

  2. 因此你有一个邻接矩阵,然后你可以使用 Imran 在评论中提到的算法,你只需要计算 An,对于 n = 1,......并检查是否有非零对角线条目,我想你的老师想要这个算法。

只需谷歌 adjacency matrix properties,您就会找到类似 this 的文章.

关于java - 检查邻接矩阵中的循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28007203/

相关文章:

java - 使用@Transient注释实体

javascript - C语言中的二叉树装箱算法

c++ - Stack 的链表实现

jquery - 在 jQuery Cycle 中隐藏/显示分页器

java - Unity 项目中的错误 : No resource found that matches the given name (at 'icon' with value '@drawable/ic_launcher' )

java - this 在 equals 方法中

java - 如何修复 "java.lang.OutOfMemoryError at sun.misc.Unsafe.allocateMemory(Native Method)"?

algorithm - 如何将这种递归解决方案转换为迭代解决方案?

embedded - 嵌入式系统中的 Systick 是什么?它们的用途是什么?

python - 如何在Python中循环遍历字母表索引?