【发布时间】:2023-03-23 17:27:01
【问题描述】:
给定一个未排序的节点数组,其中节点定义为:Node { int id;
int parent_id;
string label;
}
每个节点都有自己唯一的 id。 parent_id 在树中识别其父级。问题是如何对树进行前序遍历? (不一定是二叉树)
这是一个困扰我好几天的面试题。我能想到的是使用哈希映射map<int,list<node> >,其中键是父ID。那我就不能更进一步了。我应该从地图构建树并进行前序遍历,还是有直接从地图中进行的好方法?那怎么办?任何提示表示赞赏!
【问题讨论】:
-
有什么东西可以指定孩子的顺序吗?您可以在构建地图时标记根节点,然后从根开始按顺序遍历该地图。
标签: data-structures tree preorder