| ツリー::バイナリ tree :: binaryは、Perlのオブジェクト指向のバイナリツリーです。 |
今すぐダウンロード |
ツリー::バイナリ ランキングとまとめ
- ライセンス:
- Perl Artistic License
- 出版社のWebサイト:
- http://search.cpan.org/stevan/
ツリー::バイナリ タグ
ツリー::バイナリ 説明
Tree :: Binaryは、Perlのオブジェクト指向のバイナリツリーです。 Tree :: Binaryは、Perl.Synopsisのオブジェクト指向のバイナリツリーです。 #式の木の表現:#((2 + 2)*(4 + 5))My $ BTREE =木:: Binary-> New( "*") - > SetLeft(TREE :: Binary-> New( "+") - > SetLeft(TREE :: Binary-> New( "2")) - > SetRight(ツリー:: Binary-> New( "2")) - > SetRight(ツリー:: Binary-> New ( "+") - > setLeft(TREE :: Binary-> New( "4")) - > SetRight(Tree :: Binary-> New( "5")))。 #または視覚的に表示されている:#+ ---(*)--- +#| | .. #+ - (+) - + + - (+) - +#| | .. | .. | .. #(2)(2)(4)(5)#inOrder visitorマイ$ visitor =ツリー:: binary :: visitor :: inOrditertraversal-> new(); $ BTREE->承認($訪問者); #表記の表現を表示する印刷$ visitor-> getAcumulation(); #プリント "2 + 2 * 4 + 5"#プレーダー訪問者を取得するMy $ Visitor = Tree :: Binary :: Visitor :: PreorderTraverSal-> New(); $ BTREE->承認($訪問者); #print orderの表現を印刷する印刷$ visitor-> getAcumulation(); #プリント "* + 22 + 45"#ポストオーダービジターを取得するMy $ Visitor = Tree :: Binary :: Visitor :: PostOorderTraversal-> new(); $ BTREE->承認($訪問者); #postfixの順序で式を印刷する印刷$ visitor-> getAcumulation(); #プリント "22 + 45 + *"#幅広い初めての訪問者My $ Visitor =ツリー::バイナリ:: visitor :: bredthfirsttraversal-> new(); $ BTREE->承認($訪問者); #式を1次の範囲で印刷する$ visitor-> getAcumulation(); #プリント "* + + 22 45"#すべての循環参照$ $ btree-> destroy()をクリーンアップしてください。このモジュールは、バイナリツリーの完全オブジェクト指向の実装です。バイナリツリーは、2つの分岐、左枝、右のブランチのみを持つ特殊な種類のツリーです。 Tree :: SimpleのようなN-ARYツリーを使用することは可能ですが、あなたのバイナリツリーのニーズのほとんどを埋めるために、真のバイナリツリーオブジェクトはマンタインやuse.Binary Treeオブジェクトが特に便利です(とにかく私には)。数学的またはブール式の表現のようなものの木を構築するとき。彼らはまた、避難の木のようなもののためにゲームで使用することができます。二分木はよく調査されたデータ構造であり、それらについてウェブ上の豊富な情報があります。このモジュールは、契約スタイルで例外と最小限の設計を使用しています。必要な引数が定義されていない場合は、マニュアルで指定されていない限り、すべてのメソッド引数が必要です。通常はスローされます。たとえば、SetLestメソッドとSetRightメソッドの両方の$ tree引数は、特定のタイプ、たとえば$ tree引数である必要があります。これは何人かに厳しいように思われるかもしれませんが、これは私のコードが私が意図しているので自信を持っていること、そしてあなたがこのモジュールを使うときに同じレベルの信頼を楽しむことを信頼しています。ただし、このモジュールは例外またはエラーモジュールを使用していないことに注意してください。このオブジェクトは、MINEの他のモジュールからコピーされた多数のメソッドを使用しています。そのモジュールのユーザーは、多くの類似の方法と動作を見つけるでしょう。ただし、Tree :: Simple、Simpleの多くのメソッドがあるため、Tree :: Binaryでは意味がありません。それで、私は通常カットアンドペーストコードの再利用を承認しない間、この場合、それは最も意味があるものでした。requirements:・Perl要件 ・Perl
ツリー::バイナリ 関連ソフトウェア