📄 النص الكامل للصفحة
--- SECTION: القائمة المترابطة Linked List --- القائمة المترابطة Linked Listالقائمة المترابطة هي نوع من هياكل البيانات الخطية، وهي واحدة من هياكل البيانات الأكثر شهرة في البرمجة. القائمة المترابطة تشبه سلسلة من العقد. تحتوي كل عقدة على حقلين: حقل البيانات حيث تُخزن البيانات، وحقل يحتوي على المؤشر الذي يُشير إلى العقدة التالية. يُستثنى من هذا العقدة الأخيرة التي لا يحمل فيها حقل العنوان أي بيانات. إحدى مزايا القائمة المترابطة هي أن حجمها يزداد أو يقل بإضافة أو حذف العقد.--- SECTION: القائمة المترابطة (Linked List) --- القائمة المترابطة هي نوع من هياكل البيانات الخطية التي تشبه سلسلة من العقد.--- SECTION: العقدة (Node) --- العقدة هي اللبنة الفردية المكونة لهيكل البيانات وتحتوي على البيانات ورابط واحد أو أكثر من الروابط التي تربطها بالعقد الأخرى.--- SECTION: العقدة Node --- العقدة Nodeتتكون كل عقدة في القائمة المترابطة من جزئين:
• الجزء الأول يحتوي على البيانات.
• الجزء الثاني يحتوي على مؤشر يُشير إلى العقدة التالية.لقراءة محتوى عقدة محددة، عليك المرور على كل العقد السابقة.لتشاهد مثالاً على القائمة المترابطة للأعداد الصحيحة.
تتكون القائمة المترابطة من خمس عقد.--- SECTION: القيمة الفارغة --- القيمة الفارغة تعني أنها بلا قيمة، أو غير محددة، أو فارغة. على الرغم من أنه في بعض الأحيان يُستخدم الرقم 0 للإشارة إلى القيمة الفارغة، إلا أنه رقم محدد وقد يشير إلى قيمة حقيقية.العقد في القائمة لا يكون لها اسم، وما تعرفه عنها هو عنوانها (الموقع الذي تخزن فيه العقدة في الذاكرة). للوصول إلى أي عقدة بالقائمة، تحتاج فقط إلى معرفة عنوان العقدة الأولى. ثم تتبع سلسلة العقد للوصول إلى العقدة المطلوبة.2023 - 1447--- VISUAL CONTEXT ---
**DIAGRAM**: شكل 1.27: رسم توضيحي للقائمة المترابطة
Description: A diagram illustrating a linked list. It shows a 'Head' pointer pointing to the first node. The nodes are connected sequentially by pointers. Each node is a box divided into two parts: a data part and a pointer part. The data values shown are 5, 7.2, -2, and ABC. The last node's pointer points to 'Null' (القيمة الفارغة).
Key Values: الرأس (Head), 5, 7.2, -2, ABC, القيمة الفارغة (Null)
Context: Illustrates the basic structure of a linked list, showing how nodes are connected and how data and pointers are stored.**DIAGRAM**: شكل 1.28: رسم توضيحي للعقد
Description: A diagram showing the structure of a single node. The node is represented as a box divided into two parts. The left part contains the data, labeled 'حقل البيانات' (Data Field), with the value 12. The right part contains a pointer, labeled 'مؤشر إلى العقدة التالية' (Pointer to the next node), which points to the next node in the list.
Key Values: 12, حقل البيانات, مؤشر إلى العقدة التالية
Context: Explains the internal composition of a node, highlighting its two main components: data and a pointer to the subsequent node.**DIAGRAM**: شكل 1.29: رسم توضيحي يمثل قائمة مترابطة للأعداد الصحيحة
Description: A diagram showing a linked list of five integer nodes. A 'Head' pointer points to the first node. The nodes are connected sequentially. The data values in the nodes are 3, 12, 1, 95, and 21. The last node's pointer points to 'القيمة الفارغة' (Empty Value).
Key Values: الرأس, 3, 12, 1, 95, 21, القيمة الفارغة
Context: Provides a concrete example of a linked list storing integer values, demonstrating the sequential connection of nodes and the concept of an empty value at the end.
🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 5 بطاقة لهذه الصفحة
ما هو تعريف القائمة المترابطة (Linked List)؟
الإجابة: القائمة المترابطة هي نوع من هياكل البيانات الخطية التي تشبه سلسلة من العقد. تحتوي كل عقدة على حقل بيانات وحقل مؤشر يشير إلى العقدة التالية.
الشرح: تُعرف القائمة المترابطة بأنها هيكل بيانات خطي يتكون من عناصر مترابطة تسمى العقد. كل عقدة تخزن بياناتها وتشير إلى العقدة التالية، مما يخلق تسلسلاً.
تلميح: فكر في كيفية وصفها كـ "سلسلة" وكيف تتصل أجزاؤها.
ماذا تحتوي كل عقدة في القائمة المترابطة؟
الإجابة: تتكون كل عقدة في القائمة المترابطة من جزئين رئيسيين: حقل يحتوي على البيانات، وجزء آخر يحتوي على مؤشر (أو رابط) يشير إلى العقدة التالية.
الشرح: يتيح حقل البيانات تخزين القيمة الفعلية، بينما يتيح المؤشر ربط هذه العقدة بالعقدة التي تليها في التسلسل.
تلميح: فكر في المكونين الأساسيين اللذين يسمحان للعقدة بتخزين المعلومات والاتصال بغيرها.
ما هو دور القيمة الفارغة (Null) في القائمة المترابطة؟
الإجابة: القيمة الفارغة (Null) تُستخدم في حقل المؤشر للعقدة الأخيرة في القائمة المترابطة، للإشارة إلى نهاية القائمة وعدم وجود عقدة تالية.
الشرح: بدون مؤشر للقيمة الفارغة في العقدة الأخيرة، لن تعرف برامج الكمبيوتر أين تنتهي القائمة، مما قد يؤدي إلى أخطاء.
تلميح: ماذا يعني عندما لا يوجد شيء بعد عنصر معين؟
كيف يمكن الوصول إلى أي عقدة في القائمة المترابطة؟
الإجابة: للوصول إلى أي عقدة في القائمة المترابطة، تحتاج إلى معرفة عنوان العقدة الأولى (المعروفة بالرأس أو Head). بعد ذلك، يمكنك تتبع سلسلة العقد باستخدام المؤشرات للوصول إلى العقدة المطلوبة.
الشرح: يُعد مؤشر العقدة الأولى (Head) نقطة البداية الحيوية للتنقل عبر القائمة المترابطة. كل عقدة تحتوي على مؤشر للعقدة التالية، مما يسمح بالتحرك خطوة بخطوة.
تلميح: إذا كنت تريد الوصول إلى مكان في مكان متسلسل، فمن أين تبدأ؟
ما هي إحدى المزايا الرئيسية للقائمة المترابطة مقارنة بهياكل البيانات الأخرى مثل المصفوفات؟
الإجابة: إحدى المزايا الرئيسية للقائمة المترابطة هي أن حجمها ديناميكي؛ يمكن زيادته أو تقليله بسهولة عن طريق إضافة أو حذف العقد، دون الحاجة إلى إعادة تخصيص الذاكرة بالكامل كما في المصفوفات ثابتة الحجم.
الشرح: على عكس المصفوفات التي غالباً ما يكون لها حجم ثابت، تسمح القوائم المترابطة بالنمو والانكماش بكفاءة، مما يجعلها مفيدة في السيناريوهات التي يتغير فيها عدد العناصر بشكل متكرر.
تلميح: فكر في المرونة والتغيير. ما الذي يسهل تعديله؟