بنية بيانات موجزة
في علم الحاسوب ، تُعرَّف بنية البيانات المختصرة بأنها بنية بيانات تستخدم مساحة قريبة من الحد الأدنى النظري للمعلومات ، ولكنها (على عكس التمثيلات المضغوطة الأخرى) تسمح بإجراء عمليات استعلام فعّالة. وقد طُرِح هذا المفهوم لأول مرة من قِبَل جاكوبسون [ 1 ] لترميز متجهات البت ، والأشجار (غير المصنفة) ، والرسوم البيانية المستوية . وعلى عكس خوارزميات ضغط البيانات العامة غير المفقودة ، تحتفظ بنى البيانات المختصرة بإمكانية استخدامها مباشرةً دون الحاجة إلى فك ضغطها أولاً. وهناك مفهوم ذو صلة، وهو مفهوم بنية البيانات المضغوطة ، حيث يعتمد حجم البيانات المخزنة أو المُرمَّزة بشكل مماثل على المحتوى المحدد للبيانات نفسها.
لنفترض أنيمثل هذا العدد الأمثل من البتات اللازمة لتخزين بعض البيانات من الناحية النظرية للمعلومات. ويُطلق على تمثيل هذه البيانات اسم:
- ضمنيًا إذا كان يأخذمساحات صغيرة،
- موجز إذا استغرق الأمرمساحات صغيرة، و
- مضغوط إذا استغرق الأمرمساحات صغيرة.
على سبيل المثال، بنية بيانات تستخدموحدات التخزين صغيرة الحجم،كلمة bits مختصرة،كلمة "bits" مختصرة أيضاً، والبتات مفهومة ضمنيًا.
وبالتالي، عادةً ما يتم اختزال الهياكل الضمنية إلى تخزين المعلومات باستخدام بعض التبديلات لبيانات الإدخال؛ والمثال الأكثر شهرة على ذلك هو الكومة .
قواميس موجزة قابلة للفهرسة
تشكل القواميس الموجزة القابلة للفهرسة، والتي تسمى أيضًا قواميس الترتيب/الاختيار ، أساسًا لعدد من تقنيات التمثيل الموجزة، بما في ذلك الأشجار الثنائية .الأشجار من الرتبة n والمجموعات المتعددة ، [ 2 ] بالإضافة إلى أشجار اللواحق والمصفوفات . [ 3 ] تكمن المشكلة الأساسية في تخزين مجموعة جزئيةمن كون، وعادة ما يتم تمثيلها كمصفوفة بتأينإذايدعم القاموس القابل للفهرسة الطرق المعتادة في القواميس (الاستعلامات، والإدراجات/الحذف في الحالة الديناميكية) بالإضافة إلى العمليات التالية:
ل.
بعبارة أخرى،تُعيد عدد العناصر التي تساويحتى الوضعبينما يُعيد موضعالظهور رقم -th من.
يوجد تمثيل بسيط [ 4 ] يستخدموحدات من مساحة التخزين (مصفوفة البتات الأصلية و( بنية مساعدة) ويدعم الترتيب والاختيار في وقت ثابت. يستخدم فكرة مشابهة لتلك المستخدمة في استعلامات الحد الأدنى للنطاق ؛ حيث يوجد عدد ثابت من التكرارات قبل التوقف عند مشكلة فرعية ذات حجم محدود. مصفوفة البتاتيتم تقسيمها إلى كتل كبيرة الحجمأجزاء وكتل صغيرة من الحجمالبتات. بالنسبة لكل كتلة كبيرة، يتم تخزين رتبة البت الأول فيها في جدول منفصليأخذ كل إدخال من هذا القبيلبتات بإجماليوحدات تخزين. داخل كتلة كبيرة، دليل آخريخزن رتبة كل منيحتوي على كتل صغيرة. والفرق هنا هو أنه يحتاج فقط إلىيتم تخزين بتات لكل مدخل، حيث لا يلزم سوى تخزين الفروقات عن رتبة البت الأول في الكتلة الكبيرة الحاوية. وبالتالي، يستغرق هذا الجدول ما مجموعهبتات. جدول بحثيمكن بعد ذلك استخدام أداة تخزن الإجابة على كل استعلام ترتيب ممكن على سلسلة بتات بطوللوهذا يتطلبأجزاء من مساحة التخزين. وبالتالي، بما أن كل جدول من هذه الجداول المساعدة يأخذفي هذا الفضاء، يدعم هيكل البيانات هذا استعلامات الترتيب فيالوقت ومساحات صغيرة.
للإجابة على استفسار بخصوصفي زمن ثابت، تقوم خوارزمية الزمن الثابت بحساب ما يلي:
عملياً، جدول البحثيمكن استبدالها بعمليات على مستوى البت وجداول أصغر تُستخدم لتحديد عدد البتات المُفعّلة في الكتل الصغيرة. غالبًا ما يكون هذا مفيدًا، لأن هياكل البيانات المختصرة تُستخدم في مجموعات البيانات الكبيرة، حيث تزداد حالات عدم العثور على البيانات في ذاكرة التخزين المؤقت، وتزداد احتمالية إخراج جدول البحث من ذاكرة التخزين المؤقت الأقرب لوحدة المعالجة المركزية. [ 5 ] يمكن دعم استعلامات التحديد بسهولة عن طريق إجراء بحث ثنائي على نفس البنية المساعدة المستخدمة للترتيب ؛ ومع ذلك، فإن هذا يستغرقالوقت في أسوأ الحالات. بنية أكثر تعقيدًا باستخداميمكن استخدام وحدات تخزين إضافية لدعم عملية الاختيار في وقت ثابت. [ 6 ] عمليًا، تحتوي العديد من هذه الحلول على ثوابت مخفية فيتسود هذه الترميز قبل أن يصبح أي ميزة تقاربية واضحة؛ وغالبًا ما يكون أداء التطبيقات التي تستخدم عمليات الكلمات العريضة والكتل المحاذية للكلمات أفضل في الممارسة العملية. [ 7 ]
حلول مضغوطة بالإنتروبيا
اليمكن تحسين نهج الفضاء من خلال ملاحظة وجودمتميز- مجموعات فرعية من(أو سلاسل ثنائية بطولبالضبط1's)، وبالتالييمثل حدًا أدنى نظريًا للمعلومات لعدد البتات اللازمة للتخزينيوجد قاموس موجز (ثابت) يحقق هذا الحد، وهو استخدام[ 8 ] يمكن توسيع هذا الهيكل لدعم استعلامات الترتيب والاختيار ويأخذالمساحة. [ 2 ] مع ذلك، تقتصر استعلامات الترتيب الصحيح في هذا الهيكل على العناصر الموجودة في المجموعة، على غرار كيفية عمل دوال التجزئة المثالية الدنيا. يمكن تقليل هذا القيد إلى مفاضلة بين المساحة والوقت عن طريق تقليل مساحة تخزين القاموس إلىمع أخذ الاستفساراتالوقت. [ 9 ]
إذا رغب المرء في دعم عمليات الإضافة والحذف، فمن الممكن تحقيق حد للمساحة يبلغمع دعم كل عملية (إدراج، حذف، ترتيب، أو تحديد) في الوقت المتوقع[ 10 ]
من الممكن أيضًا إنشاء قاموس قابل للفهرسة يدعم الترتيب (ولكن ليس التحديد) ويستخدم عددًا أقل منيمكن استخدام البتات، طالما أن استعلامات الترتيب تقتصر على العناصر الموجودة في المجموعة. يُطلق على هذا القاموس اسم دالة التجزئة المثالية الدنيا الرتيبة ، ويمكن تنفيذه باستخدام عدد قليل من البتات.بتات. [ 11 ] [ 12 ]
جداول التجزئة الموجزة
جدول التجزئة الموجز ، المعروف أيضًا باسم القاموس غير المرتب الموجز، هو بنية بيانات تخزنمفاتيح من الكوناستخدام المساحةتدعم جداول التجزئة المختصرة عمليات الإدخال والحذف في وقت متوقع ثابت. وإذا كانت تدعم أيضًا عمليات الإدخال والحذف في وقت متوقع ثابت، فإنها تُسمى جداول تجزئة ديناميكية ، وإلا فإنها تُسمى جداول تجزئة ثابتة.
يعود الفضل في أول جدول تجزئة موجز ديناميكي إلى رامان وراو في عام 2003. [ 13 ] في الحالة التيحلهم يستخدم المساحةبتات. وفي وقت لاحق، تبين أنه يمكن تحسين هذا الحد المكاني إلىعدد البتات لأي عدد ثابت من اللوغاريتمات [ 14 ] ، وبعد ذلك بقليل، كان هذا الحد الأمثل أيضًا. [ 15 ] [ 16 ] يدعم الحل الأخير جميع العمليات في أسوأ الحالات في وقت ثابت باحتمالية عالية .
يعود الفضل في أول جدول تجزئة ثابت ومختصر إلى باج في عام 1999. [ 17 ] [ 18 ] في الحالة التيحلهم يستخدم المساحةيدعم هذا الحد الأقصى للبتات، ويدعم الاستعلامات ذات الوقت الثابت في أسوأ الحالات . وقد تم تحسين هذا الحد لاحقًا إلىبتات، [ 9 ] ثم إلىبتات. [ 19 ] بينما يدعم الحلان الأولان [ 18 ] [ 9 ] استعلامات ذات وقت ثابت في أسوأ الحالات، يدعم الحل الأخير استعلامات ذات وقت متوقع ثابت. [ 19 ] يتطلب الحل الأخير أيضًا الوصول إلى جدول بحث بحجملكن جدول البحث هذا مستقل عن مجموعة العناصر المخزنة. [ 19 ] وفي الآونة الأخيرة، ابتكر هو وآخرون [ 20 ] حلاً يستخدم المساحةمع دعم الاستعلامات ذات الوقت الثابت في أسوأ الحالات.
أمثلة أخرى
تشغل السلسلة ذات الطول العشوائي ( سلسلة باسكال ) مساحة Z + log( Z )، وبالتالي فهي مختصرة. إذا كان هناك حد أقصى للطول - وهو الحال عمليًا، لأن 2^ 32 = 4 جيجابايت من البيانات تُعد سلسلة طويلة جدًا، و2^ 64 = 16 إكسابايت من البيانات أكبر من أي سلسلة في الواقع - فإن السلسلة ذات الطول المحدد تكون ضمنية أيضًا، وتشغل مساحة Z + k ، حيث k هو عدد البيانات اللازمة لتمثيل الطول الأقصى (مثلًا، 64 بت).
عند الحاجة إلى ترميز سلسلة من العناصر ذات الأطوال المتغيرة (مثل السلاسل النصية)، تتوفر عدة خيارات. يتمثل أحد الأساليب المباشرة في تخزين الطول والعنصر في كل سجل، ومن ثم يمكن وضع هذه العناصر تباعًا. يتيح هذا الأسلوب الوصول الفعال إلى العنصر التالي، ولكنه لا يتيح العثور على العنصر رقم k . يتمثل بديل آخر في ترتيب العناصر باستخدام فاصل (مثل سلسلة نصية منتهية بـ null ). يستخدم هذا الأسلوب الفاصل بدلًا من الطول، وهو أبطأ بكثير، نظرًا لضرورة فحص السلسلة بأكملها بحثًا عن الفواصل. كلا الأسلوبين يتميزان بكفاءة استخدام المساحة. يتمثل أسلوب آخر في الفصل خارج النطاق: حيث يمكن ببساطة وضع العناصر تباعًا دون فواصل. يمكن بعد ذلك تخزين حدود العناصر كسلسلة من الأطوال، أو الأفضل من ذلك، كإزاحات داخل هذه السلسلة. بدلاً من ذلك، يتم ترميز سلسلة ثنائية منفصلة تتكون من 1 في المواضع التي يبدأ منها العنصر، و0 في أي مكان آخر. وبالنظر إلى هذه السلسلة، فإنيمكن للدالة تحديد مكان بداية كل عنصر بسرعة، بمعرفة فهرسه. [ 21 ] هذا مضغوط ولكنه ليس موجزًا، حيث أنه يأخذ مساحة 2Z ، وهو ما يعادل O( Z ).
مثال آخر هو تمثيل الشجرة الثنائية : شجرة ثنائية عشوائية علىيمكن تمثيل العقد فييدعم هذا النظام مجموعة متنوعة من العمليات على أي عقدة، بما في ذلك إيجاد العقدة الأب، والعقدة الابنة اليسرى واليمنى، وإرجاع حجم الشجرة الفرعية، كل ذلك في وقت ثابت. عدد الأشجار الثنائية المختلفة علىالعقدة هي. للأحجام الكبيرةهذا يتعلقوبالتالي نحتاج على الأقل إلى حواليعدد البتات اللازمة لترميزها. وبالتالي، فإن الشجرة الثنائية المختصرة ستشغل مساحة لا تتجاوز 10 بتات.عدد البتات لكل عقدة.
انظر أيضاً
مراجع
- ↑ جاكوبسون، جي. جيه (1988). هياكل البيانات الثابتة الموجزة (أطروحة دكتوراه). بيتسبرغ، بنسلفانيا: جامعة كارنيجي ميلون.
- 1 2 رامان، ر.؛ ف. رامان؛ س. س. راو (2002). "قواميس موجزة قابلة للفهرسة مع تطبيقات لترميز الأشجار متعددة الرتبة k والمجموعات المتعددة" . وقائع الندوة السنوية الثالثة عشرة لجمعية ACM-SIAM حول الخوارزميات المنفصلة . الصفحات 233-242 . arXiv : 0705.0552 . CiteSeerX 10.1.1.246.3123 . doi : 10.1145/1290672.1290680 . ISBN 0-89871-513-X.
- ↑ ساداكان، ك.؛ ر. جروسي (2006). "ضغط هياكل البيانات الموجزة ضمن حدود الإنتروبيا" (ملف PDF) . وقائع الندوة السنوية السابعة عشرة لجمعية ACM-SIAM حول الخوارزميات المنفصلة . الصفحات 1230-1239 . ISBN 0-89871-605-5تمت أرشفة النسخة الأصلية (PDF) بتاريخ 29-09-2011.
- ↑ جاكوبسون، ج. (1 نوفمبر 1989). الأشجار والرسوم البيانية الثابتة ذات الكفاءة في استخدام المساحة (ملف PDF) . المؤتمر الثلاثون لمؤسسة IEEE حول أسس علوم الحاسوب. doi : 10.1109/SFCS.1989.63533 . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 12 مارس 2016.
- ↑ غونزاليس، ر.؛ س. غرابوفسكي؛ ف. ماكينين؛ ج. نافارو (2005). "التطبيق العملي لاستعلامات الترتيب والاختيار" (ملف PDF) . وقائع ملصق ورشة العمل الرابعة حول الخوارزميات الفعالة والتجريبية (WEA) . الصفحات 27-38 .
- ↑ كلارك، ديفيد (1996). أشجار الباتش المدمجة (ملف PDF) (أطروحة دكتوراه). جامعة واترلو.
- ↑ فيجنا، س. (2008). "تنفيذ واسع النطاق لاستعلامات الترتيب/الاختيار" (ملف PDF) . الخوارزميات التجريبية . سلسلة محاضرات في علوم الحاسوب. المجلد 5038. الصفحات 154-168 . CiteSeerX 10.1.1.649.8950 . doi : 10.1007/978-3-540-68552-4_12 . ISBN 978-3-540-68548-7. S2CID 13963489 .
- ↑ برودنيك، أ.؛ ج. إ. مونرو (1999). "العضوية في زمن ثابت ومساحة شبه دنيا" (ملف PDF) . مجلة SIAM للحوسبة 28 ( 5): 1627-1640 . CiteSeerX 10.1.1.530.9223 . doi : 10.1137/S0097539795294165 .
- 1 2 3 باتراسكو، ميهاي (أكتوبر 2008). "مختصر" . المؤتمر السنوي التاسع والأربعون لمؤسسة مهندسي الكهرباء والإلكترونيات حول أسس علوم الحاسوب لعام 2008. مؤسسة مهندسي الكهرباء والإلكترونيات. الصفحات 305-313 . doi : 10.1109/focs.2008.83 . ISBN 978-0-7695-3436-7. S2CID 257721481 .
- ↑ كوزماول، ويليام؛ ليانغ، جينغشون؛ تشو، رينفي (2026)، "الترتيب/الاختيار الديناميكي الموجز: تجاوز عنق الزجاجة في بنية الشجرة" ، وقائع ندوة ACM-SIAM السنوية لعام 2026 حول الخوارزميات المنفصلة (SODA) ، فيلادلفيا، بنسلفانيا: جمعية الرياضيات الصناعية والتطبيقية، الصفحات 3760-3804 ، doi : 10.1137/1.9781611978971.138 ، ISBN 978-1-61197-897-1تم الاطلاع عليه بتاريخ 2026-04-03
- ↑ بلازوقي، جمال؛ بولدي، باولو؛ باج، راسموس؛ فيجنا، سيباستيانو (4 يناير 2009). "التجزئة المثالية الدنيا الرتيبة: البحث في جدول مُرتب باستخدام O (1) عملية وصول". وقائع الندوة السنوية العشرين لجمعية ACM-SIAM حول الخوارزميات المنفصلة . فيلادلفيا، بنسلفانيا: جمعية الرياضيات الصناعية والتطبيقية. الصفحات 785-794 . doi : 10.1137/1.9781611973068.86 . ISBN 978-0-89871-680-1.
- ↑ أسدي، سيبهر؛ فاراش-كولتون، مارتن؛ كوزماول، ويليام (يناير 2023)، "حدود دقيقة للتجزئة المثالية الدنيا الرتيبة" ، وقائع ندوة ACM-SIAM السنوية لعام 2023 حول الخوارزميات المنفصلة (SODA) ، فيلادلفيا، بنسلفانيا: جمعية الرياضيات الصناعية والتطبيقية، الصفحات 456-476 ، arXiv : 2207.10556 ، doi : 10.1137/1.9781611977554.ch20 ، ISBN 978-1-61197-755-4تم الاطلاع عليه بتاريخ 28 أبريل 2023
- ↑ رامان، راجيف؛ راو، ساتي سرينيفاسا (2003)، "قواميس وأشجار ديناميكية موجزة" ، الأوتوماتا واللغات والبرمجة ، برلين، هايدلبرغ: سبرينغر برلين هايدلبرغ، ص 357-368 ، doi : 10.1007/3-540-45061-0_30 ، ISBN 978-3-540-40493-4تم الاطلاع عليه بتاريخ 28 أبريل 2023
- ↑ بيندر، مايكل أ.؛ فاراش-كولتون، مارتن؛ كوزماول، جون؛ كوزماول، ويليام؛ ليو، مينغمو (9 يونيو 2022). "حول المفاضلة المثلى بين الوقت والمساحة لجداول التجزئة" . وقائع الندوة السنوية الرابعة والخمسين لجمعية ACM SIGACT حول نظرية الحوسبة . نيويورك، نيويورك، الولايات المتحدة الأمريكية: ACM. الصفحات 1284-1297 . arXiv : 2111.00602 . doi : 10.1145/3519935.3519969 . hdl : 1721.1/146419 . ISBN 9781450392648. S2CID 240354692 .
- ^ لي، تيانشياو؛ ليانغ، جينغشون؛ يو، هواتشنغ؛ تشو، رينفي (2023). “الحدود السفلية الضيقة لمسبار الخلية للقواميس الديناميكية المختصرة”. أرخايف : 2306.02253 [ cs.DS ].
- ↑ ناديس، ستيف (8 فبراير 2024). "علماء يجدون التوازن الأمثل بين تخزين البيانات والوقت" . مجلة كوانتا .
- ↑ باج، راسموس (28 يناير 1998). "انخفاض التكرار في القواميس مع زمن بحث O(1) في أسوأ الحالات" . سلسلة تقارير بريكس . 5 (28). doi : 10.7146/brics.v5i28.19434 . ISSN 1601-5355 .
- 1 2 باج، راسموس (يناير 2001). "انخفاض التكرار في القواميس الثابتة مع وقت استعلام ثابت" . مجلة SIAM للحوسبة . 31 (2): 353-363 . doi : 10.1137/s0097539700369909 . ISSN 0097-5397 .
- 1 2 3 يو، هواشنغ (22 يونيو 2020). "قاموس لاس فيغاس الموجز شبه الأمثل الثابت" . وقائع الندوة السنوية الثانية والخمسين لجمعية ACM SIGACT حول نظرية الحوسبة . نيويورك، نيويورك، الولايات المتحدة الأمريكية: ACM. الصفحات 1389-1401 . arXiv : 1911.01348 . doi : 10.1145/3357713.3384274 . ISBN 9781450369794. S2CID 207780523 .
- ↑ هو، يانغ؛ ليانغ، جينغشون؛ يو، هواشنغ؛ تشانغ، جونكاي؛ تشو، رينفي (15 يونيو 2025). "قاموس ثابت أمثل بوقت استعلام ثابت في أسوأ الحالات" . وقائع الندوة السنوية السابعة والخمسين لجمعية ACM حول نظرية الحوسبة . نيويورك، نيويورك، الولايات المتحدة الأمريكية: ACM. الصفحات 278-289 . doi : 10.1145/3717823.3718278 . ISBN 979-8-4007-1510-5.
- ↑ بلازوقي، جمال. "التجزئة والإزاحة والضغط" (PDF) .
- بنية بيانات موجزة
