試験に備えて練習に取り組んでいます。私は今、ツリーのトラバーサルを行っていますが、それらを処理していると思っていましたが、この質問にたどり着きましたが、順序どおりまたはポストオーダーのトラバーサルを正しく取得できません。
質問は:
次の要素が指定された順序で空の二分探索木に追加されるとします。
Meg, Stewie, Peter, Joe, Lois, Brian, Quagmire, Cleveland
上記のツリーの要素を、前順、順順、および後順トラバーサルで表示される順序で記述します。次のように、要素をスペースやコンマで区切ってソリューションを入力します。
それらがどのように追加されることになっているのかについては漠然としていますが、私はアルファベット順に仮定しています.
したがって、少なくとも私が理解しているように、ツリーは次のようになります。
Meg
/ \
Joe Stewie
/ \ / \
Brian Lois Peter Quagmire
\
Cleveland
私が正しかったと書かれている事前注文トラバーサルは、メグ、ジョー、ブライアン、クリーブランド、ロイス、ステューウィー、ピーター、クアグマイアです。
ただし、順序どおりおよび順序後のトラバーサルが間違っていると言っており、その理由がわかりません。プレオーダーがうまくいったので、ツリーは正しいと思います。他の2つについて私が持っているものは次のとおりです。
順番: ブライアン、クリーブランド、ジョー、ロイス、メグ、ピーター、ステューウィー、泥沼
ポストオーダー: クリーブランド、ブライアン、ロイス、ジョー、ピーター、クアグマイア、ステューウィー、メグ
どんな助けでも大歓迎です。トラバーサルを処理できると思うたびに、何かがループに陥ります。
編集:私のツリーは間違っています。Q はアルファベットで S の前に来ます。そのはず:
Meg
/ \
Joe Stewie
/ \ /
Brian Lois Peter
\ \
Cleveland Quagmire
正しいトラバーサルは次のとおりです。
予約注文 : メグ、ジョー、ブライアン、クリーブランド、ロイス、ステューウィー、ピーター、クアグマイア
順:ブライアン、クリーブランド、ジョー、ロイス、メグ、ピーター、クアグマイア、ステューウィー
ポストオーダー: クリーブランド、ブライアン、ロイス、ジョー、クアグマイア、ピーター、ステューウィー、メグ