مشكلة السلف

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

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

تعريف

تتمثل المشكلة في الحفاظ على مجموعة S ، التي تحتوي على مجموعة جزئية من U عدد صحيح. يمكن تخزين كل عدد من هذه الأعداد الصحيحة بحجم كلمة w ، مما يعني أنيو2w{\displaystyle U\leq 2^{w}}تدعم هياكل البيانات التي تحل المشكلة هذه العمليات: [ 2 ]

  • predecessor(x)، والتي تُرجع أكبر عنصر في S أصغر من x تمامًا
  • successor(x)، والتي تُرجع أصغر عنصر في S أكبر من x بشكل صارم

بالإضافة إلى ذلك، تدعم هياكل البيانات التي تحل النسخة الديناميكية من المشكلة هذه العمليات أيضًا:

  • insert(x)، مما يضيف x إلى المجموعة S
  • delete(x)، مما يؤدي إلى إزالة x من المجموعة S

يتم تحليل المشكلة عادةً في نموذج حسابي ثنائي التفرع مثل ذاكرة الوصول العشوائي للكلمات .

هياكل البيانات

شجرة ثنائية بأربعة مستويات. العقد في كل مستوى هي: 3: ()، 2: (0) و(1)، 1: (00) و(10)، 0: (001)، (100) و(101). العقدة غير المُسماة هي الجذر. توجد حواف موجهة بين العقد التالية: ()->(0)، ()->(1)، (0)->(00)، (0)->(001) باللون الأزرق، (1)->(10)، (1)->(101) باللون الأزرق، (00)->(001) مرتين، مرة واحدة باللون الأزرق، (10)->(100)، (10)->(101)، (001)<->(100)، (100)<->(101). العقد في كل مستوى موجودة داخل مربع، مُسمى LSS(<المستوى>).
شجرة سريعة x تحتوي على الأعداد الصحيحة 1 (001 2 ) و 4 (100 2 ) و 5 (101 2 )، والتي يمكن استخدامها لحل مشكلة السلف بكفاءة.

أحد الحلول البسيطة لهذه المشكلة هو استخدام شجرة بحث ثنائية متوازنة ، والتي تحقق (في ترميز Big O ) وقت تشغيل قدرهيا(سجلن){\displaystyle O(\log n)}بالنسبة للاستعلامات السابقة. تحقق شجرة فان إمده بواس وقت استعلام قدرهيا(سجلسجليو){\displaystyle O(\log \log U)}لكن ذلك يتطلبيا(يو){\displaystyle O(U)}[ 1 ] اقترح دان ويلارد تحسينًا على استخدام المساحة هذا باستخدام شجرة البحث السريعة جدًا (x-fast trie) ، والتي تتطلبيا(نسجليو){\displaystyle O(n\log U)}المساحة ونفس وقت الاستعلام، وشجرة y-fast الأكثر تعقيدًا ، والتي تتطلب فقطيا(ن){\displaystyle O(n)}[ 3 ] تحقق أشجار الاندماج ، التي قدمها مايكل فريدمان وويلارد، المساحة.يا(سجلwن){\displaystyle O(\log _{w}n)}وقت الاستعلام ويا(ن){\displaystyle O(n)}للاستعلامات السابقة للمسألة الثابتة. [ 4 ] تم حل المسألة الديناميكية باستخدام الأشجار الأسية معيا(سجلwن+سجلسجلن){\displaystyle O(\log _{w}n+\log \log n)}وقت الاستعلام، [ 5 ] ومع الوقت المتوقعيا(سجلwن){\displaystyle O(\log _{w}n)}باستخدام التجزئة . [ 6 ]

الخصائص الرياضية

نُشرت العديد من الأبحاث التي تُثبت حدودًا دنيا لمسألة السلف، أو تُحدد زمن تشغيل الحلول المثلى تقاربًا . على سبيل المثال، أثبت مايكل بيم وفيث إيلين أنه لكل قيم w ، توجد قيمة n بزمن استعلام (في تدوين Big Theta ).Ω(سجلwسجلسجلw){\displaystyle \Omega \left({\tfrac {\log w}{\log \log w}}\right)}وبالمثل، لكل قيم n ، توجد قيمة لـ n بحيث يكون وقت الاستعلام هوΩ(سجلنسجلسجلن){\displaystyle \Omega \left({\sqrt {\tfrac {\log n}{\log \log n}}}\right)}[ 1 ] تشمل البراهين الأخرى للحدود الدنيا مفهوم تعقيد الاتصال .

بالنسبة لمشكلة السلف الثابت، أظهر ميهاي باتراسكو وميكيل ثورب الحد الأدنى التالي لوقت البحث الأمثل، في نموذج مسبار الخلية : [ 7 ]يا(1)مين{سجلwنإل جي-إل جينأإل جيأإل جي(أإل جينإل جيأ)إل جيأإل جي(إل جيأ/إل جيإل جينأ){\displaystyle O(1)\min \left\{{\begin{array}{l}\log _{w}n\\\lg {\frac {\ell -\lg n}{a}}\\{\frac {\lg {\frac {\ell }{a}}}{\lg \left({\frac {a}{\lg n}}\,\cdot \,\lg {\frac {\ell }{a}}\right)}}\\{\frac {\lg {\frac {\ell }{a}}}{\lg \left(\lg {\frac {\ell }{a}}\right/\left.\lg {\frac {\lg n}{a}}\right)}}\end{array}}\right.} حيث يكون طول كلمة ذاكرة الوصول العشوائيw{\displaystyle w}، تحتوي المجموعةن{\displaystyle n}أعداد صحيحة من{\displaystyle \ell }كل بت يتم تمثيله في ذاكرة الوصول العشوائي باستخدامS{\displaystyle S}كلمات الفضاء، وتحديدهاأ=إل جيSن+إل جيw{\displaystyle a=\lg {\frac {S}{n}}+\lg w}.

في الحالة التيw==γإل جين{\displaystyle w=\ell =\gamma \lg n}لγ>1{\displaystyle \gamma >1}وS=نإل جييا(1)ن{\displaystyle S=n\cdot \lg ^{O(1)}n}، يكون وقت البحث الأمثل هو Θ(إل جي){\displaystyle \Theta (\lg \ell )}وتحقق شجرة فان إمدي بواس هذا الحد. [ 7 ]

انظر أيضاً

مراجع

  1. 1 2 3 بيم، بول؛ فيش، فيث (أغسطس 2002). "الحدود المثلى لمسألة السلف والمسائل ذات الصلة" . مجلة علوم الحاسوب والنظم . 65 (1): 38-72 . doi : 10.1006/jcss.2002.1822 . S2CID 1991980 . 
  2. رحمن، نائلة؛ كول، ريتشارد؛ رامان، راجيف (17 أغسطس 2001). هياكل بيانات السلف المُحسَّنة للذاكرة الداخلية (ملف PDF) . ورشة العمل الدولية حول هندسة الخوارزميات. الصفحات 67-78 . 
  3. ويلارد، دان (24 أغسطس 1983). "استعلامات النطاق في أسوأ الحالات اللوغاريتمية ممكنة في المساحة Θ(n)". رسائل معالجة المعلومات . 17 (2): 81-84 . doi : 10.1016/0020-0190(83)90075-3 .
  4. فريدمان، مايكل ؛ ويلارد، دان (1990). "اختراق حاجز نظرية المعلومات باستخدام أشجار الاندماج". ندوة حول نظرية الحوسبة : 1-7 .
  5. أندرسون، آرني؛ ثورب، ميكيل (2007)، "المجموعات المرتبة الديناميكية مع أشجار البحث الأسية"، مجلة ACM ، 54 (3): A13، arXiv : cs/0210006 ، doi : 10.1145/1236457.1236460 ، MR 2314255 ، S2CID 8175703  .
  6. رامان، راجيف (1996)، "طوابير الأولوية: صغيرة، رتيبة، ومتعددة التفرعات"، الندوة الأوروبية السنوية الرابعة حول الخوارزميات (ESA '96)، برشلونة، إسبانيا، 25-27 سبتمبر 1996 ، سلسلة محاضرات في علوم الحاسوب، المجلد 1136، برلين: سبرينغر-فيرلاغ، الصفحات 121-137 ، doi : 10.1007/3-540-61680-2_51 ، ISBN   978-3-540-61680-1MR 1469229 .
  7. 1 2 باتراشكو، ميهاي؛ ثورب، ميكيل (21 مايو 2006). "المفاضلات بين الزمان والمكان في البحث عن السلف". وقائع الندوة السنوية الثامنة والثلاثين لجمعية ACM حول نظرية الحوسبة . الصفحات 232-240 . arXiv : cs/0603043 . doi : 10.1145/1132516.1132551 . ISBN  1595931341. S2CID 1232 .