قائمة متصلة

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث

في علوم الحاسب القائمة المتصلة (بالإنجليزية: linked list) هي بنية بيانات تتضمن من مجموعة من السجلات المرتبة و المرتبطة مع بعضها البعض ، كل سجل يحتوي على حقلين الأول يحتوي على القيم أما الثاني يحتوي على مؤشر عنوان السجل التالي أو السابق أو عنوان ملغي (بالإنجليزية: NULL).

Singly-linked-list.svg

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

المبادئ الأساسية[عدل]

كل سجل في القائمة المتصلة يسمى بالعنصر أو العقدة .

يوجد في العقدة الواحدة حقل يحتوي على عنوان العقدة التالية يسمى بـالمؤشر التالي أو السابقة يسمى بالمؤشر السابق. و حقل أخر في العقدة يسمى بحقل البيانات أو المعلومات .

و الرأس هو أول عقدة في القائمة المتصلة و الذيل هو أخر عقدة .

القائمة المتصلة الخطية و الدائرية[عدل]

في العادة يكون في أخر عقدة عنوان العقدة التالية يؤشر على عنوان ملغي (بالإنجليزية: Null ) ، و هي قيمة وضعت من قبل المبرمجين معناها " لا يوجد مثل هذه العقدة" و تسمى قائمة متصلة خطية كما في الصورة الأولى ، و في بعض الأحيان قد تؤشر العقدة الأخيرة على العقدة الأولى ، وتسمى في هذه الحالة قائمة متصلة دائرية كما في الصورة الثانية .

Circularly-linked-list.svg

القائمة المتصلة البسيطة و المضاعفة[عدل]

في القائمة المتصلة المضاعفة كل عقدة تحتوي على حقل عنوان العقدة السابقة يسمى بـالمؤشر السابق مع حقل عنوان العقدة التالية المؤشر التالي و حقل البيانات و المعلومات . تسمى القائمة المتصلة التي لا تحتوي على خاصية - التالي ، السابق - بالقائمة المتصلة البسيطة .

Doubly-linked-list.svg