2

親への参照を使用するかどうか混乱しています。これにより、削除操作のアルゴリズムの複雑さが大幅に軽減されます。しかし、スペース要件など、使用に反対するいくつかの説得力のある議論を見てきました。これは、親ポインターを使用するのに適しています。製品品質のコードは親への参照を使用していますか?

4

1 に答える 1

4

短い答え:場合によります

次の質問に答えると役立ちます。

  1. 頻繁にやりたいことは?
  2. すぐにやりたいことは?
  3. どのくらいのメモリを持っていますか?

親ポインターを使用すると、最下位共通の祖先を簡単に見つけることができ、ノードを簡単に削除することもできます。

BST を何に使用する予定ですか?

より詳細に、私たちはあなたをもっと助けることができます.

その使用に対する説得力のある議論:

些細なことですが、説得力があるのなら、なぜこの質問をするのですか?

とにかく、もし私があなたなら、親ノードへの参照を含めます。これは、大量の機能を実装しやすくするためです。

繰り返しになりますが、これは時間と記憶の間のトレードオフになります。一方に多くを費やす意思がある場合は、他方の要素でより良い結果を得ることができます。

于 2013-07-01T12:26:53.800 に答える