ما هو Arraylist في C ++؟
تسمى المجموعة المستخدمة لتخزين عدة أنواع من البيانات بـ Arraylist. على عكس مصفوفات C ++ ، فهي قائمة متعددة الاستخدامات يمكن أن يتغير حجمها ديناميكيًا. يمكن استخدام فهارس عدد صحيح للوصول إلى أعضاء وبيانات المندوبين المفوضين.
في المصمم ، يمكن الاحتفاظ بنوعين مختلفين من المعلومات. في C ++ ، تجعل الفهرسة من خلال الأعداد الصحيحة من السهل التنقل عبر قائمة الصفوف. لكن، قائمة تدريجيًا أخذ مكان المصمم في C ++. نظرًا لأنه يتم تنفيذ القوائم في C ++ كقوائم مرتبطة بشكل مزدوج ، يمكن الوصول إلى البيانات في كلا الاتجاهين.
بناء الجملة
لاستخدام List في C ++ ، قم أولاً باستيراد ملف الرأس إلى البرنامج. الصيغة الأساسية لاستخدام القائمة في برامج C ++ موضحة أدناه:
قائمة < يكتب > اسم القائمة = { القيمة 1 و القيمة 2 و ... } ؛
في بناء الجملة أعلاه هو نوع البيانات.
مثال 1: مصفوفة C ++ باستخدام وظيفة List - push_back ()
فيما يلي مثال على المصمم في لغة C ++:
# تضمين
# تضمين <قائمة>
استخدام اسم للمحطة ؛
int رئيسي ( ) {
قائمة < يطفو > نومليست ؛
نومليست. إدفع إلى الخلف ( 10.1 ) ؛
نومليست. إدفع إلى الخلف ( 20.2 ) ؛
نومليست. إدفع إلى الخلف ( 30.3 ) ؛
ل ( آلي عنصر : نومليست ) {
كوت << عنصر << '' ؛
}
كوت << إندل ؛
يعود 0 ؛
}
في المثال أعلاه ، أولاً ، أنشأنا قائمة بالعوامات. بعد إنشاء القائمة ، أضفنا أعدادًا صحيحة عائمة بمساعدة وظيفة push_back ، ثم قمنا بطباعة القائمة التي تظهر المخرجات التالية:
مثال 2: مصفوفة لغة ++ C باستخدام وظيفة List - push_front ()
تم ذكر مثال القائمة باستخدام وظيفة push_front () أدناه:
# تضمين# تضمين <قائمة>
استخدام اسم للمحطة ؛
int رئيسي ( ) {
قائمة < يطفو > نومليست ؛
نومليست. دفع_مقدمة ( 10.1 ) ؛
نومليست. دفع_مقدمة ( 20.2 ) ؛
نومليست. دفع_مقدمة ( 30.3 ) ؛
ل ( آلي ي : نومليست ) {
كوت << ي << '' ؛
}
يعود 0 ؛
}
سيكون الناتج عكس وظيفة push_back ():
مثال 3: مصفوفة لغة ++ C باستخدام وظيفة List - remove ()
لحذف عنصر من قائمة C ++ ، استخدم وظيفة remove ():
# تضمين# تضمين <قائمة>
استخدام اسم للمحطة ؛
int رئيسي ( ) {
قائمة < يطفو > نومليست = { 10.1 و 20.2 و 30.3 } ؛
نومليست. يزيل ( 10.1 ) ؛
ل ( آلي ي : نومليست ) {
كوت << ي << '' ؛
}
يعود 0 ؛
}
تمت إزالة العنصر 10.1:
مثال 4: مصفوفة لغة ++ C باستخدام وظيفة List - size ()
للحصول على حجم القائمة ، استخدم:
# تضمين# تضمين <قائمة>
استخدام اسم للمحطة ؛
int رئيسي ( ) {
قائمة < يطفو > نومليست = { 10.1 و 20.2 و 30.3 و 40.2 و 22.1 } ؛
int مقاس = نومليست. مقاس ( ) ؛
كوت << 'حجم القائمة هو:' << مقاس ؛
يعود 0 ؛
}
الإخراج معطى أدناه:
كيف يعمل Arraylist في C ++؟
فيما يلي بعض النقاط الرئيسية التي تحدد عملية وميزات القائمة في C ++:
- في C ++ ، يتم إنشاء قائمة كقائمة مرتبطة بشكل مضاعف ، مما يسمح بالإدراج والحذف والوصول من كلا الاتجاهين.
- يتم استخدام القائمة المربوطة بشكل مضاعف للعناصر السابقة والتالية للقائمة لربط عناصر القائمة ببعضها البعض.
- لا تعتبر القائمة بديلاً ممتازًا لعدد صغير من المكونات لأنها تشغل ذاكرة أكبر من الحاويات الأخرى مع الحفاظ على الروابط مع العناصر السابقة والسابقة.
- يتم توفير القدرة على زيادة أو تقليل حجم قائمة في C ++ في وقت التشغيل. من الناحية العملية ، يمكن أيضًا تحقيق قائمة ذات طول صفري.
وظائف Arraylist شائعة الاستخدام
يتضمن الجدول التالي بعض وظائف القائمة الأكثر شيوعًا:
اسم الوظيفة | عمل |
قائمة :: تبدأ () | تقوم هذه الوظيفة بإرجاع مكرر يشير إلى الإدخال الأول للقائمة. |
list :: end () | تقوم هذه الوظيفة بإرجاع مكرر يشير إلى آخر إدخال للقائمة. |
دفع_واجهة () | يتم دفع العنصر عند نقطة بداية العنصر بواسطة هذه الوظيفة. |
إدفع إلى الخلف() | يتم دفع العنصر الموجود في النقطة الأخيرة من القائمة بواسطة هذه الوظيفة. |
مقاس() | يتم إرجاع العدد الإجمالي للعناصر في قائمة بواسطة هذه الوظيفة. |
نوع() | تقوم هذه الوظيفة بترتيب عناصر القائمة بترتيب تصاعدي. |
يزيل() | باستخدام هذه الوظيفة ، تتم إزالة عنصر من القائمة. |
خاتمة
في C ++ ، تم استبدال المصمم بالقائمة. هناك العديد من الوظائف التي يمكن تنفيذها لمعالجة المصفوفات. في هذا الدليل ، تعلمنا كيفية إضافة العناصر وإزالتها والتحقق من حجم القائمة. علاوة على ذلك ، يتم أيضًا سرد الوظائف المختلفة التي تدعمها القائمة.