私はデータ構造クラスの最終練習に取り組んでおり、助けを得たいと思っていたいくつかの質問があります。
void BST::traverse(Vertex *V) // post order traversal recursively { if (V != NULL) { traverse(V->Left); traverse(V->Right); cout << V->elem << endl; } }
これを深さ優先検索に変更する必要があります。そうするためには、再帰ごとにルートに再アクセスする必要があると思いますが、ルートを離れることは決してないので混乱しています。おそらく一時的な根?わからない!
リンク リストの実装では、コピー コンストラクターが使用される 2 つの場合について説明する必要があります。関数呼び出しのために呼び出されることは知っています。しかし、別の理由は何ですか?
なぜ大きな O 表記を使用するのですか [たとえば、2n^2 + 3n + 4 の代わりに O(n^2) を使用します)。そうするときに定数を無視することは知っていますが、私ができる答えは他にありますか?
時間と空間の複雑さ。私にとって最も明白なのは、マージソートとクイックソートですが、テストでさらに要求があった場合に備えて、別のソートを考えてもらえますか? 私たちはクラスで非常に多くのことを調べたので、これ以上名前を挙げられないなんて信じられません。