شجرة :: ثنائية

شجرة :: ثنائية هي شجرة ثنائية موجهة للكائنات ل PERL.
التحميل الان

شجرة :: ثنائية الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Stevan Little
  • موقع ويب الناشر:
  • http://search.cpan.org/~stevan/

شجرة :: ثنائية العلامات


شجرة :: ثنائية وصف

شجرة :: ثنائي هو الشيئية شجرة ثنائي للبيرل. شجرة :: ثنائي هو الشيئية ثنائي شجرة للاستخدام Perl.SYNOPSIS شجرة :: ثنائي. # لrepresentaion شجرة التعبير: # ((2 + 2) * (4 + 5)) بلدي $ شجرة باير = شجرة :: Binary-> الجديدة ( "*") -> setLeft (شجرة :: Binary-> الجديدة ( "+") -> setLeft (شجرة :: Binary-> الجديدة ( "2")) -> setRight (شجرة :: Binary-> الجديدة ( "2"))) -> setRight (شجرة :: Binary-> جديدة ( "+") -> setLeft (شجرة :: Binary-> الجديدة ( "4")) -> setRight (شجرة :: Binary-> الجديدة ( "5")))؛ # أو إظهار بصريا: # + --- (*) --- + # | | # + - (+) - + + - (+) - + # | | | | # (2) (2) (4) (5) # الحصول على اتباعها الزوار بلدي $ الزوار = شجرة :: :: ثنائي الزوار :: InOrderTraversal-> جديد ()؛ $ btree-> استعرض ($ الزائر)؛ # طباعة التعبير من أجل أقحم طباعة $ visitor-> getAccumulation ()؛ # طباعة "2 + 2 * 4 + 5" # الحصول على طلب مسبق الزوار بلدي $ الزوار = شجرة :: :: ثنائي الزوار :: PreOrderTraversal-> جديد ()؛ $ btree-> استعرض ($ الزائر)؛ # طباعة التعبير من أجل بادئة طباعة $ visitor-> getAccumulation ()؛ # طباعة "* + 2 + 24 5" # الحصول على PostOrder الزوار بلدي $ الزوار = شجرة :: :: ثنائي الزوار :: PostOrderTraversal-> جديد ()؛ $ btree-> استعرض ($ الزائر)؛ # طباعة التعبير من أجل بوستفيكس طباعة $ visitor-> getAccumulation ()؛ # طباعة "2 + 24 5 + *" # الحصول على اتساع الأولى الزوار بلدي $ الزوار = شجرة :: :: ثنائي الزوار :: BreadthFirstTraversal-> جديد ()؛ $ btree-> استعرض ($ الزائر)؛ # طباعة التعبير في الدرجة الأولى اتساع طباعة $ visitor-> getAccumulation ()؛ # طباعة "* + + 22 45" # تأكد من تنظيف جميع المراجع الدائرية $ btree-> الإتلاف ()؛ هذه الوحدة هي تنفيذ وجوه المنحى تماما من شجرة ثنائية. شجرة ثنائية هي نوع متخصص من الشجرة التي لديها اثنين فقط من فروع الممكنة، وهي فرع الأيسر وفرع الصحيح. في حين أنه من الممكن استخدام شجرة ن آرى، مثل شجرة :: بسيط، لملء معظم احتياجات شجرة ثنائية الخاص بك، والكائن الحقيقي شجرة ثنائية هو مجرد أسهل ل mantain والأشياء use.Binary شجرة مفيدة خاصة (بالنسبة لي على أية حال ) عند بناء الأشجار في التحليل من الأشياء مثل التعبيرات الرياضية أو المنطقية. أنها يمكن أن تستخدم أيضا في ألعاب لأشياء مثل الأشجار descisions. شجرة ثنائية هي بنية بيانات مدروسة، وهناك ثروة من المعلومات على شبكة الإنترنت حول them.This استخدامات وحدة استثناءات وأسلوب التصميم بواسطة عقد الحد الأدنى. يطلب من جميع الحجج طريقة ما لم يرد في وثائق، إذا لم يتم تعريف حجة المطلوبة وعادة ما يتم طرح استثناء. ويطلب العديد من الحجج أيضا أن يكون من نوع معين، على سبيل المثال الحجة $ شجرة لكل من setLeft وطرق setRight، يجب أن يكون الكائن شجرة :: ثنائي أو كائن مشتق من شجرة :: ثنائي، وإلا يتم طرح استثناء. وهذا قد يبدو قاسيا لبعض، ولكن هذا يتيح لي الفرصة لديهم الثقة بأن قانون بلدي يعمل كما أنوي، وللكم التمتع على نفس المستوى من الثقة عند استخدام هذه الوحدة. ملاحظة إلا أن هذه الوحدة لا يستخدم أي استثناء أو خطأ وحدة، والاستثناءات هي سلاسل عادلة القيت مع الكائن die.This يستخدم عدد من الطرق التي تم نسخها من وحدة أخرى من الألغام، شجرة :: بسيطة. وسيكون للمستخدمين في هذه الوحدة العثور على العديد من الأساليب والتصرفات المماثلة. ومع ذلك، فإنه لا معنى لشجرة :: ثنائي التي يمكن جنيها من شجرة :: بسيط، كما أن هناك عددا من الطرق في شجرة :: بسيط أن فقط لن يكون له معنى في شجرة :: ثنائي. لذلك، بينما أنا عادة لا يوافقون على قص ولصق إعادة استخدام التعليمات البرمجية، كان ما جعل معظم معانيها في هذا case.Requirements: متطلبات بيرل: perl.


شجرة :: ثنائية برامج ذات صلة