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

أوراق القوانين، وأهم خطوات الحل لكل موضوع، و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

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

N = −898 bit
U =
2.أنظمة العدصعبة
انقر على البتات لضبطها012806403201608040201

اضبط البتات على الناتج بـ 8 بتات لـ 1101 1100 OR 1001 1110. ما قيمة الناتج R بالعشري؟

1101 1100OR1001 1110
R =
3.المنطق القضوي والبراهينمتوسطة
¬r ∨ ¬pr ∧ ¬p¬r ↔ ¬pr ↔ ¬p

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

¬(r ↔ p)
  1. 1¬r ∨ ¬p
  2. 2r ∧ ¬p
  3. 3¬r ↔ ¬p
  4. 4r ↔ ¬p
4.المنطق القضوي والبراهينصعبة
rqr ∧ ¬q¬r

المقدمات (p ∧ r) → q; p; ¬q معطاة. أي استنتاج يلزم عنها؟ انقر عليه.

(p ∧ r) → qp¬q
  1. 1r
  2. 2q
  3. 3r ∧ ¬q
  4. 4¬r
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
MUXCI0​CI1​1I2​CI3​ABS1​S0​F

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

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

قلّاب JK يُحفَّز بالحافة الموجبة يبدأ بـ Q = 0 ويتلقى المداخل المعروضة. انقر على أول حافة ساعة ينتقل عندها Q من 1 عائدًا إلى 0.

Q₀ = 0JK
  1. 1حافة الساعة 1
  2. 2حافة الساعة 2
  3. 3حافة الساعة 3
  4. 4حافة الساعة 4
  5. 5حافة الساعة 5
  6. 6حافة الساعة 6
7.نظرية الأعداد والحساب المودوليمتوسطة

حلّ 28x ≡ 80 (mod 83). أعطِ الحل x مع 0 < x < 83.

28x ≡ 80 (mod 83)
x =
8.نظرية الأعداد والحساب المودوليصعبة

59 عدد أولي. استخدم مبرهنة فيرما الصغرى لإيجاد 2177556 mod 59.

p = 59k = 77556
2177556 mod 59 =
9.الخوارزميات والتعقيدمتوسطة

ما التعقيد الزمني للفرز السريع (Quicksort) في أسوأ الحالات؟

  1. AO(n log n)
  2. BO(n)
  3. CO(n²)
  4. DO(log n)
10.الخوارزميات والتعقيدصعبة

لإثبات أن مسألة جديدة X هي NP-صعبة، ماذا يجب أن تفعل؟

  1. Aأن تبيّن أنه يمكن التحقق من X في زمن كثير حدود
  2. Bأن تبيّن أن X ليس لها خوارزمية كثيرة حدود للمدخلات الصغيرة
  3. Cأن تختزل X إلى مسألة NP-صعبة معروفة في زمن كثير حدود
  4. Dأن تختزل مسألة NP-صعبة معروفة إلى X في زمن كثير حدود
11.هياكل البياناتمتوسطة

لشجرة ثنائية جذرها 1، وابنه الأيسر 2 والأيمن 3، وللعقدة 2 ابنان 4 (أيسر) و5 (أيمن). ما الاجتياز البعدي؟

  1. A5 4 3 2 1
  2. B4 5 2 3 1
  3. C1 2 4 5 3
  4. D4 2 5 1 3
12.هياكل البياناتصعبة

تُستخدم شجرة المقاطع (segment tree) عادةً من أجل:

  1. Aفرز السلاسل النصية أبجديًا بتخزين كل بادئة في عقدة منفصلة من الشجرة
  2. Bالإجابة عن استعلامات النطاقات (مثل مجاميع النطاقات) والتحديثات في O(log n)
  3. Cتنفيذ مكدس
  4. Dتخزين حواف مخطط
13.نظرية البياناتمتوسطة

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

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

استخدم خوارزمية ديكسترا لإيجاد طول d(F) أقصر مسار من A إلى F في البيان الموزون.

البداية: Aالنهاية: F
d(F) =
15.قواعد البيانات و SQLمتوسطة

تزيل الصيغة الطبيعية الثانية (2NF):

  1. Aالاعتماديات المتعدية بين الأعمدة غير المفتاحية عبر عمود غير مفتاحي آخر
  2. Bالاعتماديات الجزئية للأعمدة غير المفتاحية على جزء من مفتاح مركّب
  3. Cالمفاتيح الأجنبية
  4. Dجميع قيم NULL
16.قواعد البيانات و SQLصعبة

بعد customers LEFT JOIN orders، لماذا تُستخدم COUNT(o.id) بدلًا من COUNT(*) لعدّ الطلبات لكل عميل؟

  1. Aلأن COUNT(o.id) تعدّ العملاء المميزين فقط
  2. Bلأن COUNT(*) تتجاهل الصفوف ذات القيم NULL
  3. Cلأن COUNT(*) غير مسموح بها بعد الربط
  4. Dلأن COUNT(*) تعدّ الصف المملوء بـ NULL على أنه 1 للعملاء الذين لا طلبات لهم
17.شبكات الحاسوبمتوسطة

ما الفرق الرئيسي بين طريقتي HTTP المسماتين GET وPOST؟

  1. AGET مشفّر وPOST غير مشفّر
  2. Bيحذف GET موردًا، ويقرؤه POST من قاعدة بيانات الخادم
  3. Cيستخدم GET بروتوكول UDP ويستخدم POST بروتوكول TCP
  4. Dيسترجع GET موردًا، ويرسل POST بيانات في جسم الطلب
18.شبكات الحاسوبصعبة

ماذا يحقق تبادل مفاتيح Diffie-Hellman بمفرده، وما نقطة ضعفه؟

  1. Aيصادق على المستخدمَين بكلمات المرور، لكنه يحتاج إلى خادم مركزي
  2. Bيشفّر البيانات الكبيرة مباشرة عبر قناة عامة، لكنه أبطأ بكثير من أن يناسب الملفات الكبيرة والفيديو
  3. Cيتفق على سر مشترك عبر قناة عامة، لكنه وحده عرضة لهجوم الوسيط
  4. Dيوقّع شهادات المواقع، لكنه لا يعمل إلا مع المفاتيح القصيرة
19.تقسيم شبكات IPv4متوسطة
255.255.255.22411111111111111111111111111100000بتات الشبكةبتات المضيف

تستخدم شبكة فرعية القناع 255.255.255.224. كم عنوان مضيف قابلًا للاستخدام H فيها؟

255.255.255.224
H =
20.تقسيم شبكات IPv4صعبة

تُقسَّم الشبكة 192.168.38.0/24 بتقنية VLSM لهذه الشبكات المحلية: A: 26 مضيفون, B: 120 مضيفون, C: 9 مضيفون, D: 38 مضيفون. تُخصَّص الشبكات الفرعية من .0 صعودًا، بدءًا بالشبكة المحلية ذات أكبر عدد من المضيفين، لكلٍّ منها أصغر شبكة فرعية تكفيها. ما الثُمانية الرابعة x من عنوان شبكة LAN C؟

A: 26B: 120C: 9D: 38
x =

3المحاليل

1.أنظمة العد

الإجابة: U = 167

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

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

89 = 0101 1001
مقلوب: 1010 0110
+1 → 1010 0111

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

1010 0111₂ = 256 − 89 = 167

الإجابة

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

الإجابة: R = 222

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

بتًا ببت

تعطي OR القيمة 1 حيث يكون أحد البتين على الأقل 1.

1101 1100
OR 1001 1110
= 1101 1110

قيمة الناتج

1101 1110₂ = 222

الإجابة

R = 222
3.المنطق القضوي والبراهين

الإجابة: r ↔ ¬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) تساوي 1 بالضبط عندما يختلف a و b، وهذا هو a ↔ ¬b.
¬(r ↔ p) ≡ r ↔ ¬p

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

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

الإجابة

r ↔ ¬p

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

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

الإجابة: ¬r

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

الصفوف التي كل مقدماتها صائبة

p = 1, q = 0, r = 0: r = 0, q = 0, r ∧ ¬q = 0, ¬r = 1

الخلاصة

¬r (قاعدة الرفع مع وصل)

الإجابة

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

الإجابة: N = 5

المضاعِف (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′C + A′BC + AB′ + ABC

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

ABC = 001, 011, 100, 101, 111
N = 5

الإجابة

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

الإجابة: حافة الساعة 4

القلّابات والعدّادات: لا يتغير القلّاب إلا عند الحافة الفعالة للساعة. يَنسخ D مدخله (Q⁺ = D)؛ و T يتبدّل عندما T = 1؛ و JK يحتفظ عند 00، ويصفّر عند 01، ويضبط عند 10، ويتبدّل عند 11. للعدّاد الثنائي ذي n بتّات 2ⁿ حالة ويعدّ بالنمط 2ⁿ؛ وعدّاد mod-N يعدّ 0 و 1 … حتى N − 1 ثم يعود إلى 0، ويحتاج إلى أصغر n يحقق 2ⁿ ≥ N قلّابات. تُنصّف كل مرحلة في العدّاد المتموّج التردد، فيعمل الخرج الأخير لعدّاد mod-N بالتردد fclk/N. لعدّاد جونسون من n قلّابات 2n حالة، وللعدّاد الحلقي n.

Q بعد كل حافة

قلّاب JK: 00 يحتفظ، 01 يصفّر (Q = 0)، 10 يضبط (Q = 1)، 11 يتبدّل.

1: J = 1, K = 0 → Q = 1
2: J = 1, K = 0 → Q = 1
3: J = 0, K = 0 → Q = 1
4: J = 1, K = 1 → Q = 0
5: J = 0, K = 1 → Q = 0
6: J = 0, K = 0 → Q = 0

أول تغير من 1 إلى 0

حافة الساعة 4

الإجابة

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

الإجابة: x = 74

المعكوسات والتطابقات: للعدد 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).

معكوس 28

r = 83, t = 0
r = 28, q = 2, t = 1
r = 27, q = 1, t = −2
r = 1, q = 27, t = 3
28−1 ≡ 3 (mod 83)

الحل

x ≡ 3·80 = 240 ≡ 74 (mod 83)
تحقّق: 28·74 = 2072 ≡ 80 (mod 83)

الإجابة

x = 74
8.نظرية الأعداد والحساب المودولي

الإجابة: 2177556 mod 59 = 9

القوى المودولية وRSA: احسب aᵏ mod n بالتربيع المتكرر: اكتب k بالنظام الثنائي، وربّع، واختزل بعد كل خطوة، واضرب القوى التي بتّها 1. فيرما: aᵖ⁻¹ ≡ 1 (mod p) لعدد أولي p لا يقسم a، فيمكن اختزال الأس بالنسبة إلى p − 1. RSA: اختر عددين أوليين p و q، و n = p·q و φ(n) = (p − 1)(q − 1)؛ الأس العام e أولي مع φ(n)، والأس الخاص d = e⁻¹ mod φ(n). شفّر بـ c = mᵉ mod n وفكّ التشفير بـ m = cᵈ mod n.

اختزل الأس

77556 mod 58 = 10
2177556 ≡ 2110 (mod 59)

القوة الصغيرة

2110 mod 59 = 9

الإجابة

2177556 mod 59 = 9
9.الخوارزميات والتعقيد

الإجابة: C · O(n²)

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

عند اختيار محاور سيئة باستمرار (مثل مدخلات مرتبة مسبقًا مع اختيار العنصر الأول محورًا) تكون التقسيمات غير متوازنة، مما يعطي O(n²). أما الحالة المتوسطة فهي O(n log n).

الإجابة

C · O(n²)
10.الخوارزميات والتعقيد

الإجابة: D · أن تختزل مسألة NP-صعبة معروفة إلى X في زمن كثير حدود

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

إذا أمكن تحويل مسألة صعبة معروفة إلى X بكفاءة، فإن خوارزمية سريعة لـ X ستحل المسألة المعروفة أيضًا.

الإجابة

D · أن تختزل مسألة NP-صعبة معروفة إلى X في زمن كثير حدود
11.هياكل البيانات

الإجابة: B · 4 5 2 3 1

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

يعالج الاجتياز البعدي 4 و5 قبل 2، ثم 3، وأخيرًا الجذر 1.

الإجابة

B · 4 5 2 3 1
12.هياكل البيانات

الإجابة: B · الإجابة عن استعلامات النطاقات (مثل مجاميع النطاقات) والتحديثات في O(log n)

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

تخزّن شجرة المقاطع قيمًا مجمّعة للفترات، وتدعم استعلامات النطاقات والتحديثات النقطية في زمن O(log n).

الإجابة

B · الإجابة عن استعلامات النطاقات (مثل مجاميع النطاقات) والتحديثات في O(log n)
13.نظرية البيانات

الإجابة: L = 22

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

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

L + 46 = 2(L + 13) − 2
L = 22

الإجابة

L = 22

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

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

الإجابة: d(F) = 16

أقصر المسارات والأشجار الممتدة: تثبّت خوارزمية ديكسترا رأسًا واحدًا في كل جولة: الرأس غير المثبّت ذا أصغر مسافة مؤقتة. تصبح مسافته نهائية، ويأخذ كل جار v القيمة d(v) = min(d(v), d(u) + w(u, v)). تبني خوارزمية كروسكال شجرة ممتدة دنيا بأخذ الحواف من الأخف إلى الأثقل وتخطّي كل حافة تُغلق دورة؛ وتنمّي خوارزمية برايم شجرة واحدة من رأس البداية بإضافة أخف حافة تغادرها دائمًا. وللشجرة الممتدة على n رأسًا n − 1 حافة.

ديكسترا جولةً جولةً

كل سطر: الرأس المثبَّت، ومسافته النهائية، والجيران الذين تتحسن مسافتهم.

A (0): B: 1, C: 2
B (1): D: 10, E: 9
C (2)
E (9): F: 19
D (10): F: 16
F (16)

أقصر مسار

A → B → D → F
d(F) = 16

الإجابة

d(F) = 16
15.قواعد البيانات و SQL

الإجابة: B · الاعتماديات الجزئية للأعمدة غير المفتاحية على جزء من مفتاح مركّب

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

تتطلب 2NF تحقق 1NF وأن تعتمد كل سمة غير مفتاحية على المفتاح كاملًا، لا على جزء منه فقط.

الإجابة

B · الاعتماديات الجزئية للأعمدة غير المفتاحية على جزء من مفتاح مركّب
16.قواعد البيانات و SQL

الإجابة: D · لأن COUNT(*) تعدّ الصف المملوء بـ NULL على أنه 1 للعملاء الذين لا طلبات لهم

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

يعطي الربط الأيسر صفًا واحدًا بأعمدة طلبات NULL لمثل هؤلاء العملاء؛ وتتخطى COUNT(o.id) قيمة NULL فتذكر 0 بشكل صحيح.

الإجابة

D · لأن COUNT(*) تعدّ الصف المملوء بـ NULL على أنه 1 للعملاء الذين لا طلبات لهم
17.شبكات الحاسوب

الإجابة: D · يسترجع GET موردًا، ويرسل POST بيانات في جسم الطلب

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

يطلب GET موردًا ولا ينبغي أن يغيّر حالة الخادم. أما POST فيرسل بيانات، مثل نموذج، في الجسم ليعالجها الخادم.

الإجابة

D · يسترجع GET موردًا، ويرسل POST بيانات في جسم الطلب
18.شبكات الحاسوب

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

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

يتيح Diffie-Hellman لطرفين اشتقاق السر نفسه الذي لا يستطيع المتنصتون حسابه. لكن مهاجمًا في الوسط يمكنه إجراء تبادلين منفصلين مع كل طرف ما لم تكن القيم موقّعة أو مصادَقًا عليها بطريقة أخرى.

الإجابة

C · يتفق على سر مشترك عبر قناة عامة، لكنه وحده عرضة لهجوم الوسيط
19.تقسيم شبكات IPv4

الإجابة: H = 30

IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).

طول البادئة

255.255.255.224 = /27

المضيفون القابلون للاستخدام

25 − 2 = 30

الإجابة

H = 30
20.تقسيم شبكات IPv4

الإجابة: x = 224

VLSM: تحصل كل شبكة محلية على أصغر شبكة فرعية تحقّق 2ʰ − 2 ≥ عدد مضيفيها، أي البادئة 32 − h. تخصيص الشبكات الفرعية الأكبر أولًا يُبقي كل كتلة محاذية لمضاعف حجمها، لذا تُستنتج عناوين الشبكات بجمع أحجام الكتل.

حجم الكتلة لكل شبكة محلية

B: 120 مضيفون → 27 = 128 (/25)
D: 38 مضيفون → 26 = 64 (/26)
A: 26 مضيفون → 25 = 32 (/27)
C: 9 مضيفون → 24 = 16 (/28)

التخصيص، الأكبر أولًا

B: .0 – .127
D: .128 – .191
A: .192 – .223
C: .224 – .239

الإجابة

x = 224

LAN C: 192.168.38.224/28.

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