プランを受賞 - 33進木の枝が上下逆さまに印刷されています

タイトル説明

出力層のノードで左から右へ、上から下に層にバイナリツリーを印刷します。出力層の各ライン。
 
ソリューション:
  BFSを使用して、あなたは層で印刷することができます
  
1  クラスソリューション{
 2  公共3      ベクトル<ベクトル< 整数 >>印刷(ツリーノード* PROOT){
 4          ベクトル<ベクトル< INT >> RES。
5つの         BFS(PROOT、RES)。
6          リターンのres;
7      }
 8      ボイド BFS(ツリーノード*根、ベクトル<ベクトル< INT >>&RES)
 9      {
 10          であれば(ルート== nullptr)のリターン;
11          キュー<TreeNodeの*> Q;
12          q.push(ルート)。
13         しばらく(!q.empty())
 14          {
 15              キュー<TreeNodeの*> 温度;
16              ベクトル< int型 > V。
17              ながら(!q.empty())
 18              {                
 19                  のTreeNode * P = q.front()。
20                  q.pop()。
21                  v.push_back(P-> ヴァル)
22                  もし(P->左= nullptr!)temp.push(P-> 左)。
23                  もし(P->右= nullptr!)temp.push(P-> 右)。
24              }
25              res.push_back(V)。
26              Q = TEMP。
27          }
 28      }
 29 }。

 

おすすめ

転載: www.cnblogs.com/zzw1024/p/11681685.html