الشجرة الأسية

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

تحقق الأشجار الأسية التعقيد التقاربي الأمثل في بعض العمليات. ولها أهمية نظرية في المقام الأول.

بنية الشجرة

الشجرة الأسية هي شجرة جذرية تحتوي كل عقدة فيها على مُقسِّم، وتحتوي كل عقدة طرفية على قيمة. قد تختلف القيمة عن قيمة المُقسِّم.ن{\displaystyle n}يتم تعريف القيم بشكل متكرر:

  • الجذر لديهΘ(ن1/ك){\displaystyle \Theta (n^{1/k})}أطفال
  • مُقسِّم الجذر هو نفسه مُقسِّم الابن الأيسر
  • يتم تخزين عوامل تقسيم جميع الأبناء في بنية بيانات محلية
  • الأشجار الفرعية هي أشجار أسية معΘ(ن1-1/ك){\displaystyle \Theta (n^{1-1/k})}قيم

شرط إضافي هو أن البحث عن قيمة باستخدام أدوات التقسيم يجب أن يُنتج العقدة الصحيحة (أي العقدة التي تحتوي على القيمة). لذلك، إذا كان جذر الشجرة الفرعية يحتوي على أداة التقسيمs{\displaystyle s}ويحتوي شقيقه الأيمن على الفاصلs{\displaystyle s'}إذاً، لا يمكن أن تحتوي هذه الشجرة الفرعية إلا على مفاتيح ضمن النطاق[s،s){\displaystyle [s,s')}.

بنية البيانات المحلية

تستخدم الشجرة بنية بيانات ثابتة في كل عقدة داخلية للسماح بالبحث السريع عن القيم. يجب أن يكون من الممكن بناء هذه البنية باستخدامد{\displaystyle d}القيم في الزمنيا(دك-1){\displaystyle O(d^{k-1})}يُشار إلى وقت البحث في هذا الهيكل بـS(د){\displaystyle S(d)}.

يمكن استخدام شجرة Fusion كهيكل بيانات.

العمليات

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

يتركتي(ن){\displaystyle T(n)}لنرمز إلى التعقيد الزمني للبحث. عندئذٍ، فإنه يحقق العلاقة التكرارية التالية:

تي(ن)تي(ن1-1/ك)+يا(S(ن)){\displaystyle T(n)\leq T(n^{1-1/k})+O(S(n))}

أدخل

يمسح

مراجع