自己画了个丑图,这是个例子,1指向2,2指向1与3,3指向2与1。 求从1出发循环的个数与 最长循环长度。 最长循环 1,2,3 循环个数应该是3(有点不太记得) 我的思路是深度优先搜索,用一个栈存储已经走过的节点,如果节点已经在栈中那就出现了一个循环,并且不走它,走没有在栈中的节点,每走到一个没有在栈中的节点cnt就加一,如果这个节点指向的节点中有循环,那就cnt和max取最大值得到最长循环长度。 这个思路写出来的代码过示例没错,但是提交的时候只对了百分之9。 有没有大佬帮帮忙。