从0开始遍历,不是应该第一个遍历到1,其次再到2?

来源:10-6 实现 Hierholzer 算法

qq_问天涯_0

2020-10-26

从0开始遍历,不是应该第一个遍历到1,其次再到2?
在10-5节的算法模拟中, 对应的图片如下:
与10-6 的 映射成数字图, A -> B -> C 是 0-> 2 -> 1, 但在代码里的g.adj(curv)迭代器这一行, 应该是 0->1->2 这个顺序吧?? :)
图片描述
代码:
图片描述
10-6 的图片
图片描述

写回答

1回答

liuyubobobo

2020-10-26

课程中的代码邻接表使用 TreeSet,确实会先遍历 1,再遍历 2。


但其实我们的算法和遍历顺序是无关的,邻接表使用 HashSet,不保证节点顺序的话,整个算法也是正确的。


我不确定你提出这个问题是我在课程中 ppt 模拟算法的顺序错误了?如果是的话,抱歉!


继续加油!:)

0
2
qq_问天涯_0
非常感谢!
2020-10-26
共2条回复

玩转算法系列--图论精讲(Java版)

30+小时系统学习,bobo带你克服被图论支配的恐惧

1591 学习 · 324 问题

查看课程