فالتوازن بين الأشجار هو هياكل بيانات تحافظ على بيانات مصنَّفة وتتيح عمليات فعالة مثل البحث والادراج والحذف، وهناك نوعان مشتركان هما أشجار الفولط الأحمر وأشجار السود الأحمر، ويرمي كلاهما إلى إبقاء الشجرة متوازنة لضمان الأداء الأمثل، ولكنهما يستخدمان استراتيجيات مختلفة لتحقيق هذا الهدف.

AVL Trees

وتشكل أشجار الفولط المميت أشجار البحث الثنائية المتوازنة ذاتياً حيث يكون الفرق في الارتفاع بين الأيسر والأجزاء الأيمن من أي عقدة واحدة في معظمها، وهذا التوازن الصارم يكفل سرعة أوقات البحث، مما يجعل أشجار الفلول الخماسي الكلور مناسبة للتطبيقات التي تتطلب البحث المتكرر.

وعند إدخال أو حذف المعايدة، تؤدي أشجار الألفيونال عمليات التناوب لاستعادة التوازن، ويمكن أن تكون هذه التناوبات واحدة أو مزدوجة، تبعا للاختلال، وقد تنطوي عملية الموازنة على إجراء تعديلات أكبر مقارنة بالأشجار الأخرى، ولكنها تؤدي إلى هيكل بحثي يتسم بالكفاءة العالية.

شجرة السود الحمراء

وتشكل الأشجار ذات الحزمة الحمراء نوع آخر من شجرة البحث الثنائية المتوازنة ذاتيا، وهي تُخصص لون (الضئيلة أو السوداء) لكل عقد، وتُنفّذ القواعد التي تحافظ على توازن تقريبي، وتحد هذه القواعد من ارتفاع الشجرة، بما يكفل استمرار كفاءة العمليات.

وتميل الأشجار ذات الحزمة الحمراء إلى أن تُدخل بسرعة أكبر وتُحذف منها مقارنة بأشجار الفولط الأحمر لأنها تتطلب تناوبا أقل، وتستخدم على نطاق واسع في النظم التي تكون فيها التحديثات المتكررة ضرورية، مثل فهرسة قواعد البيانات وإدارة الذاكرة.

حالات الاستخدام الحقيقي في العالم

  • Database Indexing:] Both AVL and Red-Black trees are used to index data for rapid retrieval.
  • Memory Management:] Red-Black trees are employed in operating systems for managing free memory blocks.
  • File Systems:] Balancing trees help organize file directories efficiently.
  • Network Routing:] Trees assist in maintaining routing tables for fast datapacket forwarding.