私はMIT OCWからナップザックのような問題を解決しようとしています。 その問題が設定されました。5状態空間ツリーを実装する方法は?
最適な状態を見つけるためにブランチとバインドされたアルゴリズムを使用する必要があります。 したがって、状態空間ツリーを実装する必要があります。 私はこのアルゴリズムの考え方を理解していますが、実装するのはそれほど簡単ではありません。
予算が足りないノードが見つかった場合は、ここで停止する必要があります。 すべてのツリーノードに属性を追加する必要がありますか?
ノードを追加するとき、最大の上限を持つノードから開始する必要があります。 どのようにしてそのようなノードを見つけることができますか?各ノードを追加する前に、すべてのノードを走査する必要がありますか?または、それを助けるためにいくつかの変数を保存することはできますか?
ご存知ですか?それをPythonで実装できますか?
私を指示してくださいいない場合、私は、私が正しく問題を理解願っています:)(「状態」の二つの異なる意味から生じる混乱して申し訳ありません)
あなたはもちろんで属性を追加することができます
ありがとうございました! まず、「停止」属性を追加します。それは多くのスペースを使用しません。第二に、子孫のないノードを見つける前に、ルートから始まってツリーを横断する必要があります。 –