検索

ホームページ  >  に質問  >  本文

Pythonでバイナリツリーのルートからすべてのリーフまでのパスを取得するにはどうすればよいですか?

リーリー

これは私のコードですが、すべてのノードが毎回出力されます。その後、DEBUG は、右のサブツリーに再帰するたびに、tmp 配列が左のサブツリーを走査する前の状態を保持することを発見しました。これは、ルートから右のサブツリーまでの状態ではまったくありません。
これはスコープの問題ですか?しかし、解決方法が見つからないので、ここで答えを求めます、ありがとう

过去多啦不再A梦过去多啦不再A梦2756日前688

全員に返信(1)返信します

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-18 10:52:28

    それはスコープの問題です。おそらく、アルゴリズムには多くの問題はありません。パラメーターを関数に渡すとき、特に変数パラメーターを渡すときに知っておく必要があるということです (あなたの場合、それはリストです)。 )、数え切れないほど覚えておく必要があります。ここでの 問題は主に tmp に焦点を当てています 左のサブツリーの状態が保持される理由は、左のサブツリーをトラバースするときに左のサブツリーを tmp に追加し、次の再帰呼び出しを行うためです。左のサブツリーのみがある場合は問題ありませんが、右のサブツリーがある場合は問題が発生します。私の言語表現能力には限界があるので、修正コードを載せておきます リーリー

    返事
    0
  • キャンセル返事