新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

BinaryTreeの一番最初は、子の無いrootです。

2022-05-10 08:36:16 | C#、VBなど

 最近のVisual Basic では、Propertyが楽に書けます。少し前の例では、GetとSetを使ってましたが、下のように書けます。クラスのインスタンスはNewで作りますが、コンストラクタを定義してます。例えばInteger等では、Newを使わなくても、変数を確保できますが、使っても出来たと思います。逆にClassのインスタンスは使わないと、確保できない。だったと思います。

変数dbgを定義して、コメントは表示から外しました。

 rootを定義します。子は無し。実行は下の図。PrintはInOrderCpyで行いますが、もとはInOrderでClass binarytreeに有ったものです。名前が同じだと、まずいのでCpyを付けました。Class binarytreeは今は使いませんので、図にありません。注目は、recuresiveになっているところです。RightNodeとLeftNodeともNothingなのでmyNode.Valueを出力して終わりです。一番下のNodeは「葉」とか言うみたいですが、.Valueは有るんですね。この例の場合だと、出力はConosole.WriteLineなので不味く感じる人もいるかも知れません。

 今思ったのですが、myNodeとは何でしょう。普通に考えれば、暗黙のインスタンスであれば、例えばPythonであれば、this.Valueとかだと思いますが、なんか勘違いしているのかもしれません。

追記)InOrderCpyは、一般の関数として定義されてます。メソッド(メンバ関数)として定義すれば、root.InOrder()と書けるんしょうか?


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« BinaryTreeを初めから追って... | トップ | BinaryTreeの試行錯誤、InOrd... »
最新の画像もっと見る

C#、VBなど」カテゴリの最新記事