ما هي جداول التجزئة في الجافا سكريبت وكيفية عملها

اقرأ في هذا المقال


جداول التجزئة هي هياكل بيانات قوية في مجال الحوسبة، وتُعرف هياكل البيانات والخوارزميات بقدرتها على حل المشكلات بفعالية، كما تصل جداول التجزئة إلى المكونات في وقت ثابت (O (1))، وتمكننا جداول التجزئة من العثور على البيانات بسرعة باستخدام المفاتيح.

ما هي جداول التجزئة في الجافا سكريبت

جداول التجزئة هي هياكل بيانات تربط المفاتيح بالقيم، وتعرف جدول التجزئة أيضًا باسم “الخريطة غير المرتبة” أو “القواميس” أو “خريطة التجزئة”، حيث تقوم بتنفيذ المصفوفات الترابطية لأزواج القيمة الرئيسية، ويحدث هذا عن طريق تحويل المفاتيح والقيم إلى فهارس مصفوفة، كما توفر جدول التجزئة عمليات الإدراج والحذف والاسترجاع بكفاءة، وتأخذ وظيفة التجزئة “خوارزمية التجزئة” مفتاحًا (string) وتحوله إلى رقم، ثم تعيد تعيين هذا الرقم في (index) في مصفوفة، ويتم تعيين كلمات مختلفة لأرقام مختلفة بواسطة دالة التجزئة (hash function).

مكونات جداول التجزئة في الجافا سكريبت

يوجد مكونان لجداول التجزئة في (JavaScript) وهما: الكائن (Object) ووظيفة التجزئة (Hash Function):

  • الكائن (Object): حيث يحتوي الكائن على جدول التجزئة الذي يتم تخزين البيانات فيه، كما يحتوي على جميع أزواج “القيمة الرئيسية” لجدول التجزئة، أيضًا يجب تحديد حجمه حسب حجم البيانات المتوقعة.
  • وظيفة التجزئة (Hash Function): يتم تعريف وظيفة التجزئة لجدول التجزئة لمعرفة “فهرس” زوج القيمة الرئيسية المحدد، تقبل هذه الوظيفة (key) كمدخل ثم تقوم بتعيين (index) محدد وتعيينه كحالة عودة.

كيفية عمل جداول التجزئة

تستخدم جداول التجزئة المصفوفات لتخزين البيانات أو السجلات، حيث يتم استخدام القيمة العددية من دالة التجزئة كـ (index) لتخزين البيانات، ويتم تخزين البيانات في مستودعات باستخدام الأرقام، لفهم كيفية عمل جداول التجزئة، دعنا ننتقل إلى مشكلة تخيلية، افترض أن لدينا مكتبة بها كتب مختلفة، عليك أن تعرف الكتاب الذي تحتاجه من خلال عنوان الكتاب، من الصعب أيضًا تحديد موقع الرف المناسب حيث يوجد الكتاب، سيساعد جدول التجزئة في حل هذه المشكلة.

كل كتاب له رقم فريد (bk id)، ومفتاحنا هو معرف الكتاب، والقيمة لدينا هي عنوان الكتاب، نقوم بتمرير زوج المفتاح والقيمة إلى جدول التجزئة الخاص بنا، يتم تشغيل المفتاح من خلال دالة تجزئة، وتقوم دالة التجزئة بإرجاع فهرس (على سبيل المثال 3)، تخزن وظيفة التجزئة زوج المفتاح والقيمة في الفهرس (index)، إذا أردنا الحصول على كتاب معين، فإننا نمرر معرف الكتاب إلى جدول التجزئة، تقوم وظيفة التجزئة بتعيين المفتاح إلى الفهرس، ويتم استرداد المعلومات حول الكتاب.

ما هي استخدامات جدوال التجزئة

تستخدم جداول التجزئة على نطاق واسع في:

  • فهرسة قاعدة البيانات (Database indexing).
  • تجميع البرنامج لتحديد الكلمات الرئيسية.
  • المصفوفات الترابطية.
  • تمثيل البيانات الفريدة.

المصدر: JavaScript: The Good Parts,Douglas Crockford, 2008 edition .JavaScript: The Definitive Guide,David Flanagan, 2011 edition .PROFESSIONAL JAVASCRIPT: FOR WEB DEVELOPERS,Nicholas C. Zakas,2012 edition.A Smarter Way to Learn JavaScript / Author: Mark Myers


شارك المقالة: