c ++ stl set和map中的预订和后序遍历

时间:2016-07-02 11:53:59

标签: algorithm c++11 stl tree preorder

我有读取集和c ++中提供的映射STL是使用树实现的,所以我可以将它们作为树遍历吗?我可以获得一组或地图的预订和后期遍历吗?我知道我可以通过简单地迭代所有元素来获得有序遍历。

set<int> tree;
tree.insert(1);
tree.insert(2);
tree.insert(3);

这棵树的顺序是1,2,3和预订2,1,3和后订单1,3,2。如果我有树,我怎么能得到第二封信?

谢谢!

1 个答案:

答案 0 :(得分:1)

Stl set和map是平衡树(如红黑树)。它们不只是插入元素并将其保持在一个顺序中,它们可以平衡它们的元素以保持树木为O(logn)。因此,您的元素不一定在树中看起来像您想象的那样,并且没有任何函数可以让您看到它们是如何。