تمارين القوائم المترابطة - كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

الدرس: تمارين تطبيقية على القوائم المترابطة

📚 معلومات الصفحة

الكتاب: كتاب الذكاء الإصطناعي - الصف 12 - الفصل 1 | المادة: الذكاء الإصطناعي | المرحلة: الصف 12 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

نوع المحتوى: تمارين وأسئلة

مستوى الصعوبة: متوسط

📝 ملخص الصفحة

تتضمن هذه الصفحة تمارين تطبيقية على القوائم المترابطة في البرمجة، حيث تهدف إلى تعزيز فهم الطلاب لهياكل البيانات الأساسية. تحتوي الصفحة على قسمين رئيسيين: الأول يطلب من الطالب رسم قائمة مترابطة بناءً على عقد معطاة مع قيم ومؤشرات محددة، ثم كتابة القيم بالترتيب الصحيح. القسم الثاني يتضمن إنشاء قائمة مترابطة جديدة تضم أرقامًا محددة (5، 20، 45، 8، 1) مع مهام إضافية تتعلق بإدراج وحذف عناصر.

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

الصفحة جزء من كتاب دراسي سعودي صادر عن وزارة التعليم للعام 2023-1447، وتظهر كصفحة تمارين مرقمة (52) تهدف إلى تقييم مهارات الطلاب في معالجة هياكل البيانات. التمارين مصممة لتغطية عمليات أساسية مثل الإنشاء والترتيب والإدراج والحذف في القوائم المترابطة.

📋 المحتوى المنظم

📖 محتوى تعليمي مفصّل

6

نوع: QUESTION

باستخدام العقد التالية ارسم القائمة المترابطة، ثم اكتب القيم في القائمة بالترتيب السليم.

7

نوع: QUESTION

أنشئ قائمة تضم الأرقام التالية: 5 و 20 و 45 و 8 و 1.

Ministry of Education

نوع: METADATA

وزارة التعليم Ministry of Education 2023 - 1447

Page Number

نوع: METADATA

52

🔍 عناصر مرئية

العقد التالية

A diagram showing seven rectangular nodes, each divided into two compartments. The left compartment contains a numerical value, and the right compartment contains a pointer (another numerical value or a solid circle indicating the end of the list). The nodes are arranged horizontally.

ارسم العقد في القائمة المترابطة

An empty grid with multiple rows and columns, provided as a space for drawing the initial linked list nodes as requested in sub-question (أ) of question 7.

ارسم القائمة الجديدة

An empty grid with multiple rows and columns, provided as a space for drawing the linked list after adding the number 7 after 45, as requested in sub-question (ج) of question 7.

ارسم القائمة المترابطة النهائية

An empty grid with multiple rows and columns, provided as a space for drawing the final linked list after a deletion operation, as requested in sub-question (هـ) of question 7.

📄 النص الكامل للصفحة

--- SECTION: 6 --- باستخدام العقد التالية ارسم القائمة المترابطة، ثم اكتب القيم في القائمة بالترتيب السليم. --- SECTION: 7 --- أنشئ قائمة تضم الأرقام التالية: 5 و 20 و 45 و 8 و 1. --- SECTION: Ministry of Education --- وزارة التعليم Ministry of Education 2023 - 1447 --- SECTION: Page Number --- 52 --- VISUAL CONTEXT --- **DIAGRAM**: العقد التالية Description: A diagram showing seven rectangular nodes, each divided into two compartments. The left compartment contains a numerical value, and the right compartment contains a pointer (another numerical value or a solid circle indicating the end of the list). The nodes are arranged horizontally. X-axis: N/A Y-axis: N/A Data: The diagram presents a set of nodes for a linked list. Each node is represented by a block with two parts: a data value and a pointer to the next node. The 'Head' of the list is specified as 3. The nodes are: - Node 1: Value 9, Pointer 2 - Node 2: Value 5, Pointer 9 - Node 3: Value 0, Pointer 4 - Node 4: Value 3, Pointer 0 - Node 5: Value 1, Pointer 5 - Node 6: Value 2, Pointer -3 - Node 7: Value -3, Pointer (end of list, indicated by a solid blue circle). Key Values: Head = 3, Node values: 9, 5, 0, 3, 1, 2, -3, Pointers: 2, 9, 4, 0, 5, -3, end Context: This diagram represents the initial state of a linked list, where each node contains a data value and a reference (pointer) to the next node. The task is to construct the linked list based on these nodes and the given head, then list its elements in order. **FIGURE**: ارسم العقد في القائمة المترابطة Description: An empty grid with multiple rows and columns, provided as a space for drawing the initial linked list nodes as requested in sub-question (أ) of question 7. X-axis: N/A Y-axis: N/A Data: N/A Context: This grid is provided for the student to visually represent the linked list created from the numbers 5, 20, 45, 8, and 1, as part of question 7. **FIGURE**: ارسم القائمة الجديدة Description: An empty grid with multiple rows and columns, provided as a space for drawing the linked list after adding the number 7 after 45, as requested in sub-question (ج) of question 7. X-axis: N/A Y-axis: N/A Data: N/A Context: This grid is provided for the student to visually represent the modified linked list after an insertion operation, as part of question 7. **FIGURE**: ارسم القائمة المترابطة النهائية Description: An empty grid with multiple rows and columns, provided as a space for drawing the final linked list after a deletion operation, as requested in sub-question (هـ) of question 7. X-axis: N/A Y-axis: N/A Data: N/A Context: This grid is provided for the student to visually represent the final state of the linked list after a deletion operation, as part of question 7.

✅ حلول أسئلة الكتاب الرسمية

عدد الأسئلة: 6

سؤال س6: باستخدام العقد التالية ارسم القائمة المترابطة، ثم اكتب القيم في القائمة بالترتيب السليم. الرأس = 3

الإجابة: س6: مسار العناوين: NULL ← 2 ← 5 ← 4 ← 3 القيم بالترتيب: 0 ، 1 ، 9 ، -3

خطوات الحل:

  1. **الخطوة 1 (المفهوم):** لبناء القائمة المترابطة، نبدأ دائماً من نقطة البداية وهي "الرأس" (Head). في هذا السؤال، الرأس يشير إلى العقدة رقم 3. من هناك، نتبع المؤشر الموجود في كل عقدة لنعرف العقدة التالية حتى نصل إلى القيمة NULL التي تعني نهاية القائمة.
  2. **الخطوة 2 (التطبيق):** بتتبع المسار: نبدأ بالعقدة (3)، نجدها تشير إلى العقدة (4)، ثم العقدة (4) تشير إلى (5)، ثم العقدة (5) تشير إلى (2)، وأخيراً العقدة (2) تشير إلى NULL. أما بالنسبة للقيم المخزنة داخل هذه العقد (بناءً على ترتيب المسار)، نجد أن القيمة في العقدة 3 هي (0)، وفي العقدة 4 هي (1)، وفي العقدة 5 هي (9)، وفي العقدة 2 هي (-3).
  3. **الخطوة 3 (النتيجة):** إذن مسار العناوين هو: **الرأس ← 3 ← 4 ← 5 ← 2 ← NULL** والقيم بالترتيب هي: **0 ، 1 ، 9 ، -3**

سؤال س7: أنشئ قائمة تضم الأرقام التالية: 5 و 20 و 45 و 8 و 1. أ) ارسم العقد في القائمة المترابطة.

الإجابة: س7: ارسم العقد NULL ← 1 ← 8 ← 45 ← 20 ← 5 ← الرأس

خطوات الحل:

  1. **الخطوة 1 (المفهوم):** القائمة المترابطة تتكون من عقد، كل عقدة تحتوي على قيمة ومؤشر يشير إلى العقدة التالية. لتمثيل الأرقام (5، 20، 45، 8، 1)، سنضعها في عقد متتالية.
  2. **الخطوة 2 (التطبيق):** نبدأ بالرأس يشير إلى أول رقم (5)، ثم الـ 5 تشير إلى 20، والـ 20 تشير إلى 45، والـ 45 تشير إلى 8، والـ 8 تشير إلى 1، وأخيراً الرقم 1 يشير إلى NULL لأنه آخر عنصر.
  3. **الخطوة 3 (النتيجة):** الرسم التوضيحي للعقد: **الرأس ← 5 ← 20 ← 45 ← 8 ← 1 ← NULL**

سؤال س7: ب) صف عملية إضافة الرقم 7 بعد الرقم 45.

الإجابة: س7: صف إضافة 7 ننشئ 7، نربطها بـ 8، ونعدل مؤشر 45 ليشير ل 7

خطوات الحل:

  1. **الشرح:** لإضافة الرقم 7 بعد الرقم 45، نحتاج أولاً إلى إنشاء عقدة جديدة تحتوي على القيمة (7). بعد ذلك، نقوم بتعديل الروابط: نجعل مؤشر العقدة الجديدة (7) يشير إلى ما كان يليه الرقم 45 (وهو الرقم 8)، ثم نحدث مؤشر العقدة (45) ليصبح مشيراً إلى العقدة الجديدة (7). بهذه الطريقة، نضمن إدراج الرقم في مكانه الصحيح دون فقدان بقية القائمة.

سؤال س7: ج) ارسم القائمة الجديدة.

الإجابة: س7: ارسم القائمة الجديدة NULL ← 1 ← 8 ← 7 ← 45 ← 20 ← 5 ← الرأس

خطوات الحل:

  1. **الخطوة 1 (المفهوم):** سنقوم بتحديث الرسم السابق بناءً على عملية الإضافة التي شرحناها في الفقرة السابقة، حيث سيتم حشر العقدة (7) بين (45) و (8).
  2. **الخطوة 2 (النتيجة):** تصبح القائمة الجديدة كالتالي: **الرأس ← 5 ← 20 ← 45 ← 7 ← 8 ← 1 ← NULL**

سؤال س7: د) صف العملية المطلوبة لحذف العقدة الثانية من القائمة.

الإجابة: س7: صف حذف العقدة نعدل مؤشر (5) ليشير ل (45) مباشرة، ونحذف العقدة (20)

خطوات الحل:

  1. **الشرح:** لحذف العقدة الثانية من القائمة (وهي العقدة التي تحتوي على الرقم 20)، يجب أن نجعل العقدة التي تسبقها (وهي العقدة الأولى 5) تتجاوزها وتشير مباشرة إلى العقدة التي تليها (وهي العقدة 45). بمجرد تعديل مؤشر العقدة (5) ليشير إلى (45)، تنفصل العقدة (20) عن المسار، ويمكننا حينها حذفها من الذاكرة تماماً.

سؤال س7: هـ) ارسم القائمة المترابطة النهائية.

الإجابة: س7: القائمة النهائية NULL ← 1 ← 8 ← 7 ← 45 ← 5 ← الرأس

خطوات الحل:

  1. **الخطوة 1 (المفهوم):** نقوم الآن برسم القائمة بعد استبعاد العقدة (20) وربط العقدة (5) بالعقدة (45) مباشرة، مع الحفاظ على الإضافة السابقة (الرقم 7).
  2. **الخطوة 2 (النتيجة):** القائمة النهائية هي: **الرأس ← 5 ← 45 ← 7 ← 8 ← 1 ← NULL**

📝 أسئلة اختبارية

عدد الأسئلة: 7

سؤال 6: باستخدام العقد التالية ارسم القائمة المترابطة، ثم اكتب القيم في القائمة بالترتيب السليم.

الإجابة الصحيحة: انظر الأسئلة الفرعية

الشرح: هذا سؤال رئيسي يحتوي على أسئلة فرعية تتعلق برسم قائمة مترابطة وكتابة قيمها

تلميح: استخدم الرسم البياني للعقد المرفق لبناء القائمة المترابطة

سؤال 7: أنشئ قائمة تضم الأرقام التالية: 5 و 20 و 45 و 8 و 1.

الإجابة الصحيحة: انظر الأسئلة الفرعية

الشرح: هذا سؤال رئيسي يحتوي على أسئلة فرعية تتعلق بإنشاء قائمة مترابطة وإجراء عمليات عليها

تلميح: استخدم الشبكات الفارغة المرفقة لرسم القائمة في مراحلها المختلفة

سؤال 6: اكتب القيم في القائمة بالترتيب السليم

  • أ) 9, 5, 0, 3, 1, 2, -3
  • ب) 3, 0, 4, 9, 5, 2, -3
  • ج) 5, 20, 45, 8, 1
  • د) 1, 2, 3, 4, 5, 9, -3

الإجابة الصحيحة: 3, 0, 4, 9, 5, 2, -3

الشرح: بناءً على الرسم البياني: الرأس = 3 → العقدة 3 تشير إلى 0 → العقدة 0 تشير إلى 4 → العقدة 4 تشير إلى 9 → العقدة 9 تشير إلى 5 → العقدة 5 تشير إلى 2 → العقدة 2 تشير إلى -3 → النهاية

تلميح: اتبع المؤشرات بدءًا من العقدة ذات القيمة 3

سؤال 7: ارسم القائمة المترابطة النهائية بعد حذف العدد 20

  • أ) ارسم قائمة تحتوي على: 5 → 45 → 8 → 1
  • ب) ارسم قائمة تحتوي على: 5 → 45 → 7 → 8 → 1
  • ج) ارسم قائمة تحتوي على: 5 → 20 → 45 → 8 → 1
  • د) ارسم قائمة تحتوي على: 5 → 7 → 45 → 8 → 1

الإجابة الصحيحة: يجب رسم قائمة مترابطة تحتوي على: 5 → 45 → 7 → 8 → 1

الشرح: بعد حذف العدد 20، تصبح القائمة: 5 → 45 → 7 → 8 → 1، حيث تشير العقدة 5 الآن مباشرة إلى 45 بدلاً من 20

تلميح: استخدم الشبكة الفارغة المرفقة لرسم القائمة النهائية بعد الحذف

سؤال 6: ارسم القائمة المترابطة باستخدام العقد المعطاة

  • أ) ارسم قائمة تبدأ من 9 وتنتهي عند -3
  • ب) ارسم قائمة تبدأ من 3 وتنتهي عند -3
  • ج) ارسم قائمة تبدأ من 5 وتنتهي عند 0
  • د) ارسم قائمة تبدأ من 1 وتنتهي عند 2

الإجابة الصحيحة: يجب رسم قائمة مترابطة تبدأ من العقدة ذات القيمة 3 (الرأس) وتتبع المؤشرات: 3→0→4→... حتى النهاية

الشرح: بناءً على الرسم البياني، الرأس = 3، العقدة 3 تشير إلى 0، العقدة 0 تشير إلى 4، وهكذا حتى العقدة -3 التي تشير إلى نهاية القائمة

تلميح: ابدأ من العقدة ذات القيمة 3 واتبع المؤشرات لتحديد الترتيب

سؤال 7: ارسم العقد في القائمة المترابطة

  • أ) ارسم قائمة تحتوي على القيم: 1, 8, 45, 20, 5
  • ب) ارسم قائمة تحتوي على القيم: 5, 20, 45, 8, 1
  • ج) ارسم قائمة تحتوي على القيم: 20, 5, 1, 8, 45
  • د) ارسم قائمة تحتوي على القيم: 45, 20, 8, 5, 1

الإجابة الصحيحة: يجب رسم قائمة مترابطة تحتوي على العقد: 5 → 20 → 45 → 8 → 1

الشرح: القائمة المترابطة يجب أن تحتوي على 5 عقد بالقيم المحددة بالترتيب المعطى، مع مؤشرات تربط بينها

تلميح: استخدم الشبكة الفارغة المرفقة لرسم كل عقدة بقيمتها ومؤشرها إلى العقدة التالية

سؤال 7: ارسم القائمة الجديدة بعد إضافة العدد 7 بعد 45

  • أ) ارسم قائمة تحتوي على: 5 → 20 → 7 → 45 → 8 → 1
  • ب) ارسم قائمة تحتوي على: 5 → 20 → 45 → 7 → 8 → 1
  • ج) ارسم قائمة تحتوي على: 5 → 7 → 20 → 45 → 8 → 1
  • د) ارسم قائمة تحتوي على: 7 → 5 → 20 → 45 → 8 → 1

الإجابة الصحيحة: يجب رسم قائمة مترابطة تحتوي على: 5 → 20 → 45 → 7 → 8 → 1

الشرح: بعد إضافة العدد 7 بعد 45، تصبح القائمة: 5 → 20 → 45 → 7 → 8 → 1، حيث تشير العقدة 45 الآن إلى 7، وتشير العقدة 7 إلى 8

تلميح: استخدم الشبكة الفارغة المرفقة لرسم القائمة المعدلة

🎴 بطاقات تعليمية للمراجعة

عدد البطاقات: 4 بطاقة لهذه الصفحة

باستخدام العقد المعطاة (الرأس = 3)، والرسم التوضيحي للعقد (Node 5: [Data: 9 | Next: 2], Node 3: [Data: 0 | Next: 4], Node 4: [Data: 1 | Next: 5], Node 2: [Data: -3 | Next: null])، اكتب القيم في القائمة المترابطة بالترتيب الصحيح.

الإجابة: 0, 1, 9, -3

الشرح: تبدأ القائمة من الرأس (3)، والتي تحتوي على القيمة 0. المؤشر التالي للرأس هو 4، التي تحتوي على القيمة 1. المؤشر التالي للعقدة 4 هو 5، التي تحتوي على القيمة 9. المؤشر التالي للعقدة 5 هو 2، التي تحتوي على القيمة -3. مؤشر العقدة 2 هو null، مما يعني نهاية القائمة.

تلميح: ابدأ من عقدة الرأس واتبع مؤشرات 'Next' لتحديد تسلسل العقد.

أنشئ قائمة مترابطة تضم الأرقام: 5، 20، 45، 8، 1. صف عملية إضافة الرقم 7 بعد الرقم 45.

الإجابة: لإضافة الرقم 7 بعد الرقم 45، يجب أولاً العثور على العقدة التي تحتوي على القيمة 45. ثم، يتم إنشاء عقدة جديدة تحتوي على القيمة 7. يتم تحديث مؤشر العقدة 45 ليشير إلى العقدة الجديدة (7). وأخيراً، يتم جعل مؤشر العقدة الجديدة (7) يشير إلى العقدة التي كانت تلي 45 في الأصل (وهي 8 في هذه الحالة).

الشرح: عملية الإضافة تتضمن خطوتين رئيسيتين: ربط العقدة الجديدة بالعقدة السابقة لها، ثم جعل العقدة الجديدة تشير إلى العقدة التي كانت تلي العقدة السابقة.

تلميح: تخيل عملية ربط عقدة جديدة بين عقدتين موجودتين.

في قائمة مترابطة تحتوي على الأرقام (5، 20، 45، 7، 8، 1) بعد إضافة 7، صف العملية المطلوبة لحذف العقدة الثانية من القائمة.

الإجابة: لحذف العقدة الثانية (20)، يجب أن يشير مؤشر العقدة الأولى (5) مباشرة إلى العقدة الثالثة (45). يتم ذلك عن طريق تحديث مؤشر العقدة التي تسبق العقدة المراد حذفها ليصبح مساوياً لمؤشر العقدة التي تليها. بعد ذلك، يمكن التخلص من العقدة المحذوفة.

الشرح: الحذف في القوائم المترابطة يتطلب تعديل مؤشر العقدة السابقة للعقدة المراد حذفها.

تلميح: فكر في كيفية جعل العقدة السابقة تتجاوز العقدة التي سيتم حذفها.

اكتب قائمة الأرقام الأولية التي تم إنشاؤها في السؤال 7 قبل إجراء أي تعديلات.

الإجابة: 5, 20, 45, 8, 1

الشرح: السؤال يطلب في البداية إنشاء قائمة بالأرقام: 5 و 20 و 45 و 8 و 1.

تلميح: ارجع إلى بداية السؤال 7 لتحديد الأرقام الأصلية التي تم طلب إنشائها.