思路:

Binary Tree Level Order Traversal I 几乎一样。只是最后将结果存放在栈里,然后在栈里再传给向量即可。

再次总结思路:

两个queue,先把第一个放进q1,循环q1是否为空,不为空就读取并出列,如果root有孩子就放入q2,最后清空q2。

注意:

for循环的时候不要使用vector.size()这类作为最大值判断,由于vector的size可能不断的减小,这回导致遍历不完的情况发生。

即:

        int count = sret.size();
        for(int i =0 ;i< count;i++)
        {
            ret.push_back(sret.top());
            sret.pop();
        }

 

 posted on 2014-09-10 22:47  叱咤小虾米  阅读(139)  评论(0编辑  收藏  举报