我试图找出一种遍历图形Scala样式的简洁方法,最好是使用val和不可变数据类型.
给出以下图表,
val graph = Map(0 -> Set(1),
1 -> Set(2),
2 -> Set(0, 3, 4),
3 -> Set(),
4 -> Set(3))
Run Code Online (Sandbox Code Playgroud)
我希望输出是在给定节点中开始的深度优先遍历.例如,从1开始,应该屈服1 2 3 0 4.
如果没有可变的集合或变量,我似乎无法找到一个很好的方法.任何帮助,将不胜感激.