الفرق الرئيسي - TreeSet مقابل TreeMap

يتم استخدام صفيف لتخزين مجموعة من عناصر البيانات من نفس النوع. معظم لغات البرمجة تدعم المصفوفات. على الرغم من أن الصفيف يمكنه تخزين قيم متعددة ؛ هناك عيب كبير. بمجرد إنشاء الصفيف ، لا يمكن تغييره. إذا أعلن المبرمج عن مجموعة مكونة من 10 عناصر ، فلن يتمكن من تخزين 15 عنصرًا. عندما يعلن المبرمج عن صفيف مكون من 10 عناصر ويخزن 5 عناصر فقط ، فإن بقية الذاكرة المخصصة تعتبر مضيعة. لغات البرمجة مثل Java لديها مجموعات لتخزين عناصر البيانات بشكل ديناميكي. هناك عدد من المجموعات. تساعد المجموعات على إجراء عمليات الإضافة وإزالة العناصر والعمليات الأخرى. تعرف الواجهة الأساسية بـ Collection. تعد "تعيين" و "قائمة" و "قائمة انتظار" بعض الواجهات التي تمدد واجهة المجموعة. Map هي واجهة للتسلسل الهرمي للمجموعة ، لكنها لا تمدد واجهة المجموعة. TreeSet هي فئة تقوم بتنفيذ واجهة Set وتخزين العناصر بترتيب تصاعدي. TreeMap هي فئة تطبق واجهة Map وتقوم بتخزين أزواج المفاتيح والقيمة بترتيب تصاعدي. هذا هو الفرق الرئيسي. تتناول هذه المقالة الفرق بين TreeSet و TreeMap.

محتويات

1. نظرة عامة والفرق الرئيسي 2. ما هو TreeSet 3. ما هو TreeMap 4. أوجه التشابه بين TreeSet و TreeMap 5. مقارنة جنبًا إلى جنب - TreeSet مقابل TreeMap في نموذج جدولي 6. ملخص

ما هو TreeSet؟

TreeSet هي فئة تنفذ واجهة Set. يحتفظ TreeSet بعناصر فريدة. تطبق TreeSet واجهة NavigableSet. تعمل الواجهة Navigable على توسيع واجهات SortedSet و Set و Collection و Iterable بالترتيب الهرمي. يقوم TreeSet بتخزين العناصر بترتيب تصاعدي. إذا كان ترتيب الإدراج هو A ، C ، B ، فسيقوم TreeSet بتخزينها كـ A ، B ، C. هناك طرق ل TreeSet. يتم استخدام طريقة الإضافة لإضافة عنصر إلى المجموعة. يتم استخدام طريقة الإزالة لإزالة عنصر محدد. طريقة واضحة تستخدم لإزالة جميع العناصر. الأسلوب يحتوي على إرجاع صحيح إذا كان العنصر المحدد موجود في المجموعة. وهي بعض الطرق التي تقدمها TreeSet. راجع البرنامج أدناه.

وفقا للبرنامج أعلاه ، Treeset هو كائن من نوع TreeSet. يمكن تخزين السلاسل. يتم إضافة العناصر باستخدام طريقة الإضافة. ترتيب الإدراج هو A و C و D و B. باستخدام التكرار ، تتم طباعة القيم المخزنة على الشاشة. يتم تخزين العناصر بالترتيب A ، B ، C ، D. لذلك ، يحتفظ TreeSet بترتيب تصاعدي لعناصر المجموعة. إذا كان هناك عنصر آخر باسم "D" ، فلن تتم الطباعة لأن العنصر D موجود بالفعل في المجموعة. دائما يخزن عناصر فريدة.

ما هو تريماب؟

TreeMap هي فئة تطبق واجهة الخريطة. تدعم الخريطة أزواج القيمة الرئيسية. كل مفتاح ، زوج القيمة هو إدخال. كل مفتاح فريد من نوعه وله قيمة مقابلة. يتم استخدام أسلوب containKey للعثور على مفتاح معين بينما يتم استخدام أسلوب ContainValue لإيجاد قيمة محددة. يتم استخدام طريقة الحصول على للعثور على القيمة المقابلة للمفتاح المحدد. يتم استخدام طريقة الوضع لتخزين قيمة باستخدام المفتاح المحدد. من الممكن أيضًا إزالة عنصر في مفتاح معين باستخدام طريقة الإزالة. تلك هي بعض الطرق الشائعة لواجهة الخريطة. يساعد في البحث عن العناصر وإدراجها وحذفها بناءً على المفتاح. تطبق فئة TreeMap NavigableMap. NavigableMap يمتد SortedMap. SortedMap يمتد خريطة. لذلك ، يمكن استخدام أساليب Map مع TreeMap. راجع البرنامج أدناه.

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

ما هي أوجه التشابه بين TreeSet و TreeMap؟

  • يوجد كل من TreeSet و TreeMap في التسلسل الهرمي للمجموعة. يحتفظ كل من TreeSet و TreeMap بالترتيب التصاعدي. يستطيع كل من TreeSet و TreeMap تخزين ومعالجة العديد من العناصر.

ما هو الفرق بين TreeSet و TreeMap؟

ملخص - TreeSet مقابل TreeMap

يتم استخدام مجموعة لتخزين مجموعة من العناصر ، لكنها لا تساعد في تخزين العناصر بشكل حيوي. تحتوي لغات البرمجة مثل Java على مجموعات لتخزين عناصر البيانات بشكل حيوي. المجموعة هي الفئة الأساسية في التسلسل الهرمي للمجموعة. يتكون من فئات واجهات لإجراء عمليات مثل إضافة وحذف العناصر. تعيين وخريطة هي واجهات اثنين من التسلسل الهرمي. TreeSet هي فئة تقوم بتنفيذ واجهة Set وتخزين العناصر بترتيب تصاعدي. TreeMap هي فئة تطبق واجهة Map وتخزن أزواج المفاتيح والقيمة بترتيب تصاعدي. هذا هو الفرق بين TreeSet و TreeMap.

مرجع:

1. "TreeSet في Java - javatpoint." جافا نقطة. متوفر هنا 2. "TreeMap in Java - javatpoint." ، Java Point. متاح هنا