ツリー::バイナリ

tree :: binaryは、Perlのオブジェクト指向のバイナリツリーです。
今すぐダウンロード

ツリー::バイナリ ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • Perl Artistic License
  • 価格:
  • FREE
  • 出版社名:
  • Stevan Little
  • 出版社の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


ツリー::バイナリ 関連ソフトウェア