أساسيات علوم الحاسوب: حزمة المراجعة المكثفة

أوراق القوانين، وأهم خطوات الحل لكل موضوع، و20 مسألة تدريبية، مع الحلول الكاملة في الخلف.

مسائل جديدةالعودة إلى المقرّر

في نافذة الطباعة اختر «حفظ بصيغة PDF» لحفظ نسخة على جهازك.

1القوانين وطرق الحل

أنظمة العد

القيم الموضعية
الثنائي 2k، الثماني 8k، الست عشري 16k
إلى العشري
Σ dk·bk
من العشري
اقسم على الأساس، واقرأ البواقي من الأسفل إلى الأعلى
الست عشري ↔ الثنائي
رقم ست عشري واحد = 4 بتات
المتمم الثنائي
اعكس البتات وأضف 1

المنطق القضوي والبراهين

صفوف جدول الصدق
2ⁿ
الاستلزام
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
نفي الاستلزام
¬(p → q) ≡ p ∧ ¬q
الشرط الثنائي
p ↔ q ≡ (p → q) ∧ (q → p)
دي مورغان
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
قوانين التوزيع
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
نفي الكمّمات
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
قاعدة الوضع (modus ponens) وقاعدة الرفع (modus tollens)
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

الطريقة

  1. عُدّ المتغيرات المختلفة: لجدول الصدق 2ⁿ صفًا، ويبدأ بصف تكون فيه كلها 1.
  2. أعطِ كل صيغة جزئية عمودها الخاص واملأ الأعمدة من الداخل إلى الخارج.
  3. طبّق قاعدة كل رابط: → يساوي 0 فقط في الحالة 1 → 0، و ↔ يساوي 1 عندما يتفق الطرفان.
  4. للتكافؤات قارن العمودين الأخيرين صفًا بصف؛ وللحجة انظر فقط إلى الصفوف التي تكون فيها كل المقدمات 1.
  5. لنفي عبارة مكمَّمة، انقل ¬ إلى الداخل، وبدّل ∀ و ∃، وانفِ الصيغة الداخلية.

المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

البوابات الأساسية
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
القواعد البولية
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
دي مورغان
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
ترتيب خريطة كارنو
00, 01, 11, 10 (Gray code)
مجموعة من 2ᵏ خلية
تفقد k متغيرًا
مضاعِف 4-إلى-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
القلّابات
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
العدّادات
n بتّات: 2ⁿ حالة؛ mod-N: أصغر n يحقق 2ⁿ ≥ N؛ fout = fclk/N
العدّاد المتموّج
fmax = 1/(n·tpd)
العدّادان الحلقي وجونسون
n و 2n حالة

الطريقة

  1. لدارة ما، اعمل من المداخل إلى المخرج بوابةً بوابةً واكتب القيمة على كل سلك، أو اكتب تعبيرها واملأ جدول الصدق.
  2. للتبسيط ضع الآحاد (وحالات عدم الاكتراث على شكل X) في خريطة كارنو بصفوف وأعمدة بشيفرة غراي: 00, 01, 11, 10.
  3. غطِّ الآحاد بأقل عدد ممكن وأكبر حجم ممكن من المجموعات ذات 1 أو 2 أو 4 أو 8 أو 16 خلية، مع الالتفاف حول الحواف؛ كل مجموعة حد جداء واحد من المتغيرات التي تبقى ثابتة. جمّع الأصفار للصيغة POS.
  4. للقلّابات والعدّادات اقرأ المداخل عند كل حافة ساعة فعالة، واكتب الحالة بعد كل حافة، وتذكّر أن عدّادًا ذا n بتّات يلتف بعد 2ⁿ حالة.

نظرية الأعداد والحساب المودولي

القسمة مع الباقي
a = q·n + r, 0 ≤ r < n
إقليدس
gcd(a, b) = gcd(b, a mod b)
المضاعف المشترك الأصغر
lcm(a, b) = a·b/gcd(a, b)
المعكوس
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
التطابق الخطي
a·x ≡ b → x ≡ a⁻¹·b (mod n)
دالة أويلر φ
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
فيرما
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

الطريقة

  1. اختزل كل عدد بالنسبة إلى n أولًا؛ البواقي تقع بين 0 و n − 1.
  2. للقاسم المشترك الأكبر، اقسم مرارًا بخوارزمية إقليدس؛ آخر باقٍ غير صفري هو القاسم المشترك الأكبر.
  3. للمعكوس، نفّذ الخوارزمية الموسّعة واحتفظ بمعامل a؛ أضف n إذا كان سالبًا.
  4. حلّ a·x ≡ b بالضرب في a⁻¹؛ ولدمج تطابقين اكتب x = r₁ + m₁k.
  5. للقوى اكتب الأس بالنظام الثنائي وربّع مرارًا؛ وفي RSA، d = e⁻¹ mod φ(n) مع φ(n) = (p − 1)(q − 1).

نظرية البيانات

مبرهنة المصافحة
Σ deg(v) = 2|E|
البيانات التامة
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
البيان المنتظم
|E| = n·k/2
الشجرة والغابة
|E| = n − 1, |E| = n − c
أوراق الشجرة
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
أويلر
الدارة: كل الدرجات زوجية؛ المسار: درجتان فرديتان بالضبط
دارات هاملتون في Kn
(n − 1)!/2
تحديث ديكسترا
d(v) = min(d(v), d(u) + w(u, v))
المسارات (walks) بطول L
(Mᴸ)ij

الطريقة

  1. اكتب درجة كل رأس؛ مجموع الدرجات يساوي ضعف عدد الحواف.
  2. في أسئلة أويلر، تحقّق من أن البيان متصل وعُدّ الرؤوس ذات الدرجة الفردية.
  3. للأشجار استخدم n − 1 حافة ومبرهنة المصافحة.
  4. في ديكسترا احتفظ بجدول للمسافات المؤقتة وثبّت في كل جولة أصغر رأس غير مثبّت.
  5. لإيجاد شجرة ممتدة دنيا، رتّب الحواف بحسب الوزن وتخطَّ كل حافة تُغلق دورة (كروسكال)، أو أنمِ شجرة واحدة انطلاقًا من رأس البداية (برايم).

تقسيم شبكات IPv4

المضيفون في كل شبكة فرعية
2(32 − prefix) − 2 (/31: 2, /32: 1)
حجم الكتلة
256 − (mask octet)
عنوان الشبكة
IP AND القناع
عنوان البث
IP OR (NOT mask): كل بتات المضيف = 1
الشبكات الفرعية من n بتات مستعارة
2n

2مسائل تدريبية

1.أنظمة العدمتوسطة
المتمم الثنائي ذو 8 بتات0−12806403201608040201

اضبط البتات بحيث تخزن −107 في المتمم الثنائي بـ 8 بتات. إذا قُرئ كعدد بدون إشارة، فما قيمة النمط U؟

N = −1078 bit
U =
2.أنظمة العدصعبة
3226 رموز، b = ؟ بت?2ᵇ⁻¹…?4?2?1

يجب أن يعطي نظام كل واحد من 3226 عنصرًا رمزًا ثنائيًا خاصًا به بالطول نفسه. ما أقل عدد من البتات b يلزم؟

3226
b = bit
3.المنطق القضوي والبراهينمتوسطة
(r → q) → pr → (q → p)(r → p) ∧ (q → p)r ∧ (q → p)

أي صيغة تكافئ (r ∧ q) → p منطقيًا؟ انقر عليها.

(r ∧ q) → p
  1. 1(r → q) → p
  2. 2r → (q → p)
  3. 3(r → p) ∧ (q → p)
  4. 4r ∧ (q → p)
4.المنطق القضوي والبراهينصعبة
∃x (F(x) ∧ ¬G(x))∃x (F(x) → ¬G(x))∀x (F(x) ∧ ¬G(x))∃x (¬F(x) ∧ G(x))

أي عبارة تكافئ ¬∀x (F(x) → G(x)) مع نقل النفي إلى الداخل تمامًا؟ انقر عليها.

¬∀x (F(x) → G(x))
  1. 1∃x (F(x) ∧ ¬G(x))
  2. 2∃x (F(x) → ¬G(x))
  3. 3∀x (F(x) ∧ ¬G(x))
  4. 4∃x (¬F(x) ∧ G(x))
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
MUX1I0​0I1​1I2​0I3​ABS1​S0​F

لمضاعِف 4-إلى-1 مدخلا الاختيار S₁ = A و S₀ = B، ومداخل بياناته موصولة بـ I₀ = 1, I₁ = 0, I₂ = 1, I₃ = 0. في كم من تركيبات A و B و C الثماني يكون المخرج F = 1؟ جد N.

I₀ = 1I₁ = 0I₂ = 1I₃ = 0
N =
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتصعبة
ABCD00011110000111101011030214050706X120130150140809111X10

جد الصيغة الدنيا SOP للدالة F(A, B, C, D) = Σm(0, 1, 4, 11) + d(10, 12)، حيث تشير d إلى حالات عدم الاكتراث. كم حرفًا L تحتوي؟

F(A, B, C, D) = Σm(0, 1, 4, 11) + d(10, 12)
L =
7.نظرية الأعداد والحساب المودوليمتوسطة

جد معكوس 25 بالنسبة إلى 31: العدد x مع 0 < x < 31 و 25·x ≡ 1 (mod 31).

a = 25n = 31
25−1 mod 31 =
8.نظرية الأعداد والحساب المودوليصعبة

حلّ 14x ≡ 24 (mod 58). أعطِ أصغر حل موجب x.

14x ≡ 24 (mod 58)
x =
9.الخوارزميات والتعقيدمتوسطة

يجد البحث بالعرض أولًا في رسم بياني غير موزون:

  1. Aأقصر المسارات بعدد الأضلاع من عقدة البداية
  2. Bالشجرة الممتدة الصغرى
  3. Cترتيبًا طوبولوجيًا في جميع الرسوم البيانية
  4. Dأقصر المسارات في رسوم بيانية تحتوي على أوزان سالبة للحواف
10.الخوارزميات والتعقيدصعبة

ما الكلفة الزمنية والمكانية لحساب عدد فيبوناتشي رقم n بحلقة لا تحتفظ إلا بآخر قيمتين؟

  1. Aزمن O(2ⁿ) ومساحة O(1)
  2. Bزمن O(log n) ومساحة O(n)
  3. Cزمن O(n) ومساحة O(n)
  4. Dزمن O(n) ومساحة O(1)
11.هياكل البياناتمتوسطة

ما بنية البيانات التي يستخدمها البحث بالعمق أولًا (DFS، النسخة التكرارية)؟

  1. Aكومة
  2. Bطابور
  3. Cمكدس
  4. Dجدول تجزئة فقط
12.هياكل البياناتصعبة

يجب أن تحتفظ بأصغر k قيمة من تدفق من n عددًا باستخدام ذاكرة O(k). أي طريقة تعمل في زمن O(n log k)؟

  1. Aكومة صغرى تحمل القيم n كلها، تُستخرج منها أصغر k قيمة في النهاية
  2. Bكومة عظمى حجمها k، يُستبدل جذرها حين تصل قيمة أصغر
  3. Cطابور FIFO لآخر k قيمة
  4. Dمصفوفة مرتبة لكل القيم n
13.نظرية البياناتمتوسطة

لشجرة 2 رؤوس من الدرجة 3, 4 رؤوس من الدرجة 4, 4 رؤوس من الدرجة 5, 4 رؤوس من الدرجة 2، وكل رؤوسها الأخرى أوراق (درجة 1). كم ورقة L لها؟

2 × deg 34 × deg 44 × deg 54 × deg 2
L =
14.نظرية البياناتصعبة
ABCDE

كم مسارًا مغلقًا (closed walk) بطول 2 يبدأ وينتهي عند E؟ يجوز للمسار تكرار الرؤوس والحواف. سمِّ العدد N.

M = مصفوفة التجاورL = 2
N =
15.قواعد البيانات و SQLمتوسطة

أي استعلام يسرد العملاء الذين لم يقدّموا أي طلب قط؟

  1. ASELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
16.قواعد البيانات و SQLصعبة

لربط مساواة بين جدولين كبيرين دون فهارس مفيدة، أي خوارزمية ربط يختارها المُحسِّن غالبًا؟

  1. Aالربط بالتجزئة (Hash join)
  2. Bالربط التقاطعي
  3. Cربط الحلقات المتداخلة مع البحث في الفهرس
  4. Dربط الخرائط النقطية على المفتاح الأساسي
17.شبكات الحاسوبمتوسطة

في أي طبقة من طبقات OSI يعمل المبدّل (switch) عادةً؟

  1. Aربط البيانات (الطبقة 2)
  2. Bالمادية (الطبقة 1)
  3. Cالشبكة (الطبقة 3)
  4. Dالنقل (الطبقة 4)
18.شبكات الحاسوبصعبة

يهدف هجوم تسميم ذاكرة DNS المؤقتة (DNS cache poisoning) إلى:

  1. Aجعل المحلِّل (resolver) يخزّن عنوان IP مزيفًا لنطاق ما
  2. Bحذف خوادم DNS
  3. Cإغراق خادم بالحركة حتى يتوقف عن الرد على الاستعلامات
  4. Dسرقة كلمات مرور Wi-Fi
19.تقسيم شبكات IPv4متوسطة
/?11111111111111111111100000000000بتات الشبكةبتات المضيف

يحتاج قسم إلى 1057 عنوان مضيف في شبكة فرعية واحدة. ما أطول بادئة p (أصغر شبكة فرعية) تكفي؟

1057 hosts
p =
20.تقسيم شبكات IPv4صعبة
الثُمانية الأخيرة = 97012816413201608040211الشبكةالمضيف

عنوان مضيف هو 10.20.148.97/26. ما الثُمانية الرابعة x من عنوان شبكته؟

10.20.148.97/26
x =

3المحاليل

1.أنظمة العد

الإجابة: U = 149

ضبط البتات: قيمة كل بت قوة للعدد اثنين (128 و64 … و1). الرقم السداسي عشري الواحد يساوي أربع بتات تمامًا، وفي المتمم الثنائي بـ 8 بتات تساوي قيمة البت الأيسر −128. وتعمل العمليات على مستوى البت على كل موضع بت على حدة.

اقلب وأضف واحدًا

107 = 0110 1011
مقلوب: 1001 0100
+1 → 1001 0101

اقرأه بلا إشارة

1001 0101₂ = 256 − 107 = 149

الإجابة

U = 149
2.أنظمة العد

الإجابة: b = 12 bit

أنظمة العد الموضعية: قيمة كل رقم هي قيمته مضروبة في قوة من قوى الأساس. في النظام الثنائي تساوي المواضع 1، 2، 4، 8، 16، …؛ وفي السداسي عشري 1، 16، 256، …، حيث تمثل A–F القيم 10–15. في المتمم الثنائي ذي 8 بتات تساوي البتة اليسرى −128 بدلًا من +128، وهكذا تُخزَّن الأعداد السالبة.

قوى العدد 2

211 = 2048 < 3226
212 = 4096 ≥ 3226

الإجابة

b = 12
3.المنطق القضوي والبراهين

الإجابة: r → (q → p)

التكافؤ المنطقي: تتكافأ صيغتان (≡) عندما يكون لهما القيمة نفسها في كل صف من جدول الصدق. الحشو يساوي 1 في كل صف، والتناقض يساوي 0 في كل صف، والممكن ليس هذا ولا ذاك. قوانين مفيدة: دي مورغان، ¬(a ∧ b) ≡ ¬a ∨ ¬b و ¬(a ∨ b) ≡ ¬a ∧ ¬b؛ و a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (العكس النقيض)؛ و ¬(a → b) ≡ a ∧ ¬b؛ وقوانين التوزيع، a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).

القانون

التصدير: (a ∧ b) → c ≡ a → (b → c). كلتاهما 0 فقط عندما a = 1 و b = 1 و c = 0.
(r ∧ q) → p ≡ r → (q → p)

تحقق بجدول الصدق

p = 1, q = 1, r = 1: 1 | 1 1 1 1
p = 1, q = 1, r = 0: 1 | 1 1 1 0
p = 1, q = 0, r = 1: 1 | 1 1 1 1
p = 1, q = 0, r = 0: 1 | 1 1 1 0
p = 0, q = 1, r = 1: 0 | 0 0 0 0
p = 0, q = 1, r = 0: 1 | 0 1 0 0
p = 0, q = 0, r = 1: 1 | 1 1 0 1
p = 0, q = 0, r = 0: 1 | 0 1 1 0

الإجابة

r → (q → p)

الأعمدة بعد الشريط هي الخيارات بالترتيب المعروض.

4.المنطق القضوي والبراهين

الإجابة: ∃x (F(x) ∧ ¬G(x))

الكمّمات والحجج: ¬∀x P(x) ≡ ∃x ¬P(x) و ¬∃x P(x) ≡ ∀x ¬P(x). انقل النفي إلى الداخل، وبدّل كل كمّم يمرّ به، وانفِ الصيغة الداخلية بقوانين المنطق القضوي، مثل ¬(a → b) ≡ a ∧ ¬b. تكون الحجة صحيحة عندما يكون الاستنتاج 1 في كل صف تكون فيه كل المقدمات 1. صف واحد بمقدمات صائبة واستنتاج خاطئ هو مثال مضاد ويبيّن أن الحجة غير صحيحة.

انقل النفي إلى الداخل

¬∀x (F(x) → G(x)) ≡ ∃x (F(x) ∧ ¬G(x))

الإجابة

∃x (F(x) ∧ ¬G(x))

الخيارات الأخرى إما تُبقي كمّمًا دون تغيير، أو تغيّر ترتيب الكمّمات، أو تنفي الصيغة الداخلية نفيًا خاطئًا.

5.المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

الإجابة: N = 4

المضاعِف (MUX): يمرّر المضاعِف 2ⁿ-إلى-1 أحد مداخل البيانات إلى المخرج؛ وخطوط الاختيار، مقروءة كعدد ثنائي، تحدد أيّها. لمضاعِف 4-إلى-1 مع الاختيارين S₁S₀ = AB، F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. وبوصل مداخل البيانات بـ 0 أو 1 أو C أو C′ ينتج المضاعِف أي دالة في A و B و C، وهي طريقة شائعة لبناء المنطق بشريحة واحدة.

تعبير الخرج

F = A′B′ + AB′

الصفوف التي F = 1 فيها

ABC = 000, 001, 100, 101
N = 4

الإجابة

N = 4
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

الإجابة: L = 9

خرائط كارنو: ترتَّب الخلايا بشيفرة غراي (00, 01, 11, 10)، فتختلف الخلايا المتجاورة، بما فيها تلك التي عبر الحواف، في متغير واحد بالضبط. جمّع الآحاد في مستطيلات من 1 أو 2 أو 4 أو 8 أو 16 خلية، بأكبر حجم وأقل عدد ممكنين، حتى يُغطى كل 1. كل مجموعة حد جداء واحد: المتغيرات التي تبقى ثابتة داخلها. المجموعة من 2ᵏ خلية تفقد k متغيرًا. يجوز استخدام حالات عدم الاكتراث (X) لتكبير المجموعات لكن لا يجب تغطيتها أبدًا. أما تجميع الأصفار فيعطي الصيغة الدنيا POS.

المضمّنات الأولية

أكبر المجموعات التي يمكن تكوينها من الآحاد و X.

BC′D′, A′C′D′, A′B′C′, AB′C
ABCD00011110000111101011030214050706X120130150140809111X10

التغطية الدنيا

F = BC′D′ + A′B′C′ + AB′C
L = 9

الإجابة

L = 9

يوجد تجميع آخر بالحجم نفسه؛ وله عدد الحدود والحروف نفسه.

7.نظرية الأعداد والحساب المودولي

الإجابة: 25−1 mod 31 = 5

المعكوسات والتطابقات: للعدد a معكوس بالنسبة إلى n بالضبط عندما gcd(a, n) = 1. تكتب خوارزمية إقليدس الموسّعة 1 = s·n + t·a، ثم a⁻¹ ≡ t (mod n). التطابق a·x ≡ b (mod n) مع gcd(a, n) = 1 حلّه x ≡ a⁻¹·b. لتطابقين x ≡ r₁ (mod m₁) و x ≡ r₂ (mod m₂) بمقياسين أوليين فيما بينهما حل واحد بالنسبة إلى m₁·m₂ (مبرهنة الباقي الصينية). تعدّ φ(n) لأويلر الأعداد من 1 إلى n التي أولية مع n: φ(n) = n·∏(1 − 1/p).

خوارزمية إقليدس الموسّعة

يُكتب كل باقٍ r بالشكل r ≡ t·25 (mod 31).

r = 31, t = 0
r = 25, q = 1, t = 1
r = 6, q = 4, t = −1
r = 1, q = 6, t = 5

المعكوس

1 ≡ 5·25 (mod 31)
x = 5
تحقّق: 25·5 = 125 = 4·31 + 1

الإجابة

25−1 mod 31 = 5
8.نظرية الأعداد والحساب المودولي

الإجابة: x = 10

المعكوسات والتطابقات: للعدد a معكوس بالنسبة إلى n بالضبط عندما gcd(a, n) = 1. تكتب خوارزمية إقليدس الموسّعة 1 = s·n + t·a، ثم a⁻¹ ≡ t (mod n). التطابق a·x ≡ b (mod n) مع gcd(a, n) = 1 حلّه x ≡ a⁻¹·b. لتطابقين x ≡ r₁ (mod m₁) و x ≡ r₂ (mod m₂) بمقياسين أوليين فيما بينهما حل واحد بالنسبة إلى m₁·m₂ (مبرهنة الباقي الصينية). تعدّ φ(n) لأويلر الأعداد من 1 إلى n التي أولية مع n: φ(n) = n·∏(1 − 1/p).

اقسم على القاسم المشترك الأكبر

gcd(14, 58) = 2
7x ≡ 12 (mod 29)

حلّ التطابق المختزل

7−1 ≡ 25 (mod 29) → x ≡ 10 (mod 29)

الحلول بالنسبة إلى 58

x ∈ {10, 39}
x = 10

الإجابة

x = 10
9.الخوارزميات والتعقيد

الإجابة: A · أقصر المسارات بعدد الأضلاع من عقدة البداية

لماذا هذه هي الإجابة

يزور BFS العقد بترتيب بعدها (بعدد الأضلاع) عن المصدر، لذا يجد أقصر المسارات غير الموزونة في O(V + E).

الإجابة

A · أقصر المسارات بعدد الأضلاع من عقدة البداية
10.الخوارزميات والتعقيد

الإجابة: D · زمن O(n) ومساحة O(1)

لماذا هذه هي الإجابة

لا تحتاج كل خطوة إلا إلى القيمتين السابقتين، فيمكن استبدال جدول الطريقة التصاعدية بمتغيرين.

الإجابة

D · زمن O(n) ومساحة O(1)
11.هياكل البيانات

الإجابة: C · مكدس

لماذا هذه هي الإجابة

يتعمّق DFS قدر الإمكان، مستخدمًا بشكل طبيعي مكدسًا (أو مكدس استدعاءات العودية)، بينما يستخدم BFS طابورًا.

الإجابة

C · مكدس
12.هياكل البيانات

الإجابة: B · كومة عظمى حجمها k، يُستبدل جذرها حين تصل قيمة أصغر

لماذا هذه هي الإجابة

جذر الكومة العظمى هو أكبر قيمة محفوظة، وأي قيمة جديدة أصغر تحل محله في O(log k)، فتحفظ الكومة دائمًا أصغر k قيمة حتى الآن.

الإجابة

B · كومة عظمى حجمها k، يُستبدل جذرها حين تصل قيمة أصغر
13.نظرية البيانات

الإجابة: L = 24

أويلر وهاملتون والأشجار: لبيان متصل دارة أويلر (كل حافة مرة واحدة، والعودة إلى البداية) عندما تكون لكل رأس درجة زوجية، ومسار أويلر ليس دارة عندما تكون لرأسين بالضبط درجة فردية؛ ويسير المسار عندئذ من أحد الرأسين الفرديين إلى الآخر. تزور دارة هاملتون كل رأس مرة واحدة؛ وفي Kn منها (n − 1)!/2. للشجرة على n رأسًا n − 1 حافة، ويحتفظ بيان متصل ذو m حافة بشجرة ممتدة بعد حذف m − n + 1 حافة.

مبرهنة المصافحة لشجرة

L + 50 = 2(L + 14) − 2
L = 24

الإجابة

L = 24

اختصار: L = 2 + Σ (d − 2) على الرؤوس ذات الدرجة d ≥ 3.

14.نظرية البيانات

الإجابة: N = 3

الدرجات: درجة الرأس هي عدد الحواف التي تلتقي عنده. لكل حافة طرفان، فتساوي الدرجات مجتمعةً ضعف عدد الحواف: Σ deg(v) = 2|E| (مبرهنة المصافحة). وعدد الرؤوس ذات الدرجة الفردية زوجي إذن. للبيان Kn عدد n(n − 1)/2 حافة، وللبيان k-المنتظم على n رأسًا nk/2، وللشجرة على n رأسًا n − 1 حافة.

مصفوفة التجاور

A: 0 1 1 0 0
B: 1 0 0 1 1
C: 1 0 0 0 1
D: 0 1 0 0 1
E: 0 1 1 1 0

الجيران المشتركون

(M²)EE = 0·0 + 1·1 + 1·1 + 1·1 + 0·0 = 3

الإجابة

N = 3
15.قواعد البيانات و SQL

الإجابة: B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL

لماذا هذه هي الإجابة

يُبقي الربط الأيسر جميع العملاء ويملأ أعمدة الطلبات بـ NULL عند عدم وجود تطابق؛ ثم تختار IS NULL هؤلاء العملاء بالضبط.

الإجابة

B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
16.قواعد البيانات و SQL

الإجابة: A · الربط بالتجزئة (Hash join)

لماذا هذه هي الإجابة

يبني الربط بالتجزئة جدول تجزئة على أحد المُدخلين ويستقصيه بالآخر، وهذا يعمل جيدًا لروابط المساواة الكبيرة دون فهارس.

الإجابة

A · الربط بالتجزئة (Hash join)
17.شبكات الحاسوب

الإجابة: A · ربط البيانات (الطبقة 2)

لماذا هذه هي الإجابة

يتعلّم المبدّل القياسي عناوين MAC ويمرّر الإطارات في الطبقة 2. أما مبدّلات الطبقة 3 فتقوم بالتوجيه أيضًا.

الإجابة

A · ربط البيانات (الطبقة 2)
18.شبكات الحاسوب

الإجابة: A · جعل المحلِّل (resolver) يخزّن عنوان IP مزيفًا لنطاق ما

لماذا هذه هي الإجابة

يُدرج التسميم سجلات مزورة في الذاكرة المؤقتة للمحلِّل. ويضيف DNSSEC تواقيع حتى تتمكن المحلِّلات من التحقق من السجلات.

الإجابة

A · جعل المحلِّل (resolver) يخزّن عنوان IP مزيفًا لنطاق ما
19.تقسيم شبكات IPv4

الإجابة: p = 21

تقسيم شبكات IPv4: يتكون العنوان من 32 بتة. تحدد البادئة /p عدد البتات الأولى التي تعرّف الشبكة؛ وتُرقّم البتات المتبقية 32 − p المضيفين. تحتوي الشبكة الفرعية على 2³²⁻ᵖ عنوانًا، لكن الأول (عنوان الشبكة) والأخير (عنوان البث) لا يُعطيان للمضيفين، فيتسع 2³²⁻ᵖ − 2 مضيفًا. الاستثناءات: الشبكة /31 (وصلة من نقطة إلى نقطة، RFC 3021) تستخدم كلا عنوانَيها الـ 2 للمضيفين، والشبكة /32 عنوان واحد فقط (مضيف واحد أو عنوان loopback).

بتات المضيف اللازمة

210 − 2 = 1022 < 1057
211 − 2 = 2046 ≥ 1057 → h = 11

طول البادئة

p = 32 − 11 = 21

الإجابة

p = /21
20.تقسيم شبكات IPv4

الإجابة: x = 64

تقسيم شبكات IPv4: يتكون العنوان من 32 بتة. تحدد البادئة /p عدد البتات الأولى التي تعرّف الشبكة؛ وتُرقّم البتات المتبقية 32 − p المضيفين. تحتوي الشبكة الفرعية على 2³²⁻ᵖ عنوانًا، لكن الأول (عنوان الشبكة) والأخير (عنوان البث) لا يُعطيان للمضيفين، فيتسع 2³²⁻ᵖ − 2 مضيفًا. الاستثناءات: الشبكة /31 (وصلة من نقطة إلى نقطة، RFC 3021) تستخدم كلا عنوانَيها الـ 2 للمضيفين، والشبكة /32 عنوان واحد فقط (مضيف واحد أو عنوان loopback).

حجم الكتلة

26 = 64

الشبكة الفرعية لهذا المضيف

الشبكة: ⌊97/64⌋·64 = 64
البث: 64 + 64 − 1 = 127
المضيفون القابلون للاستخدام: 65 … 126

الإجابة

x = 64

ExamProblems · examproblems.com/courses/computer-science-fundamentals