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

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

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

N = −118 bit
U =
2.أنظمة العدصعبة
المتمم الثنائي بـ 16 بت, N = ??الإشارة???????????????

ما أصغر (أكثر سالبية) عدد صحيح N يمكن تخزينه بالمتمم الثنائي ذي 16 بتة؟

16 bit
N =
3.المنطق القضوي والبراهينمتوسطة
p → q¬p → ¬q¬q → ¬p¬p ∧ ¬q

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

q → p
  1. 1p → q
  2. 2¬p → ¬q
  3. 3¬q → ¬p
  4. 4¬p ∧ ¬q
4.المنطق القضوي والبراهينصعبة
pqq ∨ pq¬p11100100

الحجة ذات المقدمات q ∨ p; q والاستنتاج ¬p غير صحيحة. انقر على صف جدول الصدق الذي يمثل مثالًا مضادًا.

q ∨ pq∴ ¬p
  1. 1p = 1, q = 1
  2. 2p = 1, q = 0
  3. 3p = 0, q = 1
  4. 4p = 0, q = 0
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
ABCD0001111000011110111111

في خريطة كارنو هذه يوجد 1 واحد بالضبط لا جار 1 له، فيبقى مجموعة من خلية واحدة (حد أصغري كامل من أربعة حروف) في الصيغة الدنيا SOP. الجيران عبر حواف الخريطة تُحسب. انقر على تلك الخلية.

F = Σm(0, 2, 11, 12, 13, 14)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتصعبة
FFQ0​Q0​FFQ1​Q1​FFQ2​Q2​CLKMOD-5

ساعة 50 kHz تقود عدّاد mod-5. جد تردد fout خرجه الأعلى وزنًا، الذي يُكمل دورة واحدة لكل دورة عدّ.

fclk = 50 kHzN = 5
fout = kHz
7.نظرية الأعداد والحساب المودوليمتوسطة

جد دالة أويلر φ φ(25)، أي عدد الأعداد الصحيحة من 1 إلى 25 التي أولية مع 25.

n = 25 = 52
φ(25) =
8.نظرية الأعداد والحساب المودوليصعبة

استخدم التربيع المتكرر لإيجاد 350 mod 31.

a = 3k = 50n = 31
350 mod 31 =
9.الخوارزميات والتعقيدمتوسطة

يستخدم فرز سريع العنصر الأول محورًا دائمًا. على أي مدخل يُظهر سلوك أسوأ الحالات؟

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

تُظهر مسألة التوقف أنه:

  1. Aلا توجد خوارزمية تستطيع أن تقرر لكل برنامج ومدخل ما إذا كان البرنامج سيتوقف
  2. Bبعض البرامج تعمل أسرع على حواسيب أسرع، فيعتمد التوقف على العتاد
  3. Cكل برنامج يتوقف في النهاية
  4. Dيجب تجنب الحلقات
11.هياكل البياناتمتوسطة

ما قيمة التعبير اللاحق (postfix) 3 4 + 2 *؟

  1. A14
  2. B24
  3. C11
  4. D10
12.هياكل البياناتصعبة

لماذا لا يمكن ببساطة حذف العناصر من مرشح Bloom قياسي بمسح بتاتها؟

  1. Aلأن بتات مرشح Bloom لا يمكن تغييرها بعد إنشائه
  2. Bلأن مرشحات Bloom تخزّن العناصر كاملة، ولا يمكن إيجادها ثانية بعد تجزئتها
  3. Cلأن الحذف سيرفع معدل الإيجابيات الكاذبة إلى 100%
  4. Dلأن تلك البتات قد تخص عناصر أخرى أيضًا، فيسبب ذلك سلبيات كاذبة
13.نظرية البياناتمتوسطة

كم دارة هاملتون مختلفة H للبيان التام K8؟ الدارات التي تختلف فقط في رأس البداية أو الاتجاه تُعدّ واحدة.

K8
H =
14.نظرية البياناتصعبة
ABCDE

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

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

يمكن للطلاب أخذ مقررات كثيرة وللمقررات طلاب كثيرون. كيف يُنمذج ذلك في الجداول؟

  1. Aبعمود مفتاح أجنبي course_id في جدول الطلاب يشير إلى المقررات
  2. Bبقائمة من معرّفات المقررات مخزنة في عمود واحد
  3. Cبجدول وسيط يحمل مفاتيح أجنبية إلى الطلاب والمقررات معًا
  4. Dبدمج الطلاب والمقررات في جدول واحد
16.قواعد البيانات و SQLصعبة

يُسقط الاستعلام FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' على نحو غير متوقع العملاء الذين لا طلبات لهم. لماذا؟

  1. Aلأن الربط يجب أن يستخدم USING بدلًا من ON
  2. Bلأن LEFT JOIN لا تُبقي الصفوف غير المتطابقة أبدًا
  3. Cلأن status كلمة محجوزة
  4. Dلأن شرط WHERE على o يرفض الصفوف المملوءة بـ NULL، فيحوّله إلى ربط داخلي
17.شبكات الحاسوبمتوسطة

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

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

ما الفائدة الرئيسية للاتصالات الدائمة (keep-alive) في HTTP/1,1؟

  1. Aيبقى الاتصال مشفرًا دون TLS
  2. Bيمكن أن تصل الردود بأي ترتيب على تدفق واحد، فلا تعطّل الردود البطيئة غيرها
  3. Cتعيد طلبات عدة استخدام اتصال TCP واحد، فتُتجنب المصافحات المتكررة
  4. Dيستطيع الخادم دفع التحديثات عبر UDP
19.تقسيم شبكات IPv4متوسطة
255.255.255.19211111111111111111111111111000000بتات الشبكةبتات المضيف

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

255.255.255.192
H =
20.تقسيم شبكات IPv4صعبة
الثُمانية الثالثة 217 … 222112816403211618040211مشتركمتغيّر

لدى موجّه مسارات إلى هذه الشبكات: 10.6.217.0/24, 10.6.218.0/24, 10.6.219.0/24, 10.6.220.0/24, 10.6.221.0/24, 10.6.222.0/24. ما أطول طول بادئة p لمسار تلخيصي واحد يغطّيها كلها؟

10.6.217.0/24 … 10.6.222.0/24
p =

3المحاليل

1.أنظمة العد

الإجابة: U = 245

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

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

11 = 0000 1011
مقلوب: 1111 0100
+1 → 1111 0101

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

1111 0101₂ = 256 − 11 = 245

الإجابة

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

الإجابة: N = −32768

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

القيمة الأكثر سالبية

−215 = −32768

الإجابة

N = −32768
3.المنطق القضوي والبراهين

الإجابة: ¬p → ¬q

التكافؤ المنطقي: تتكافأ صيغتان (≡) عندما يكون لهما القيمة نفسها في كل صف من جدول الصدق. الحشو يساوي 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).

القانون

يكافئ الاستلزام عكسه النقيض ¬b → ¬a، لا عكسه b → a ولا معكوسه ¬a → ¬b.
q → p ≡ ¬p → ¬q

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

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

الإجابة

¬p → ¬q

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

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

الإجابة: p = 1, q = 1

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

المقدمات والاستنتاج صفًا صفًا

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

مثال مضاد

p = 1, q = 1

الإجابة

p = 1, q = 1

حجة بهذه الصيغة تبدو قاعدة صحيحة، لكن صفًا واحدًا يكفي لإثبات أنها ليست كذلك.

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

الإجابة: AB = 10, CD = 11

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

جيران كل 1

يمكن لـ 1 له جار 1 أن ينضم إلى مجموعة من اثنين أو أكثر.

m11: m10, m9, m15, m3 → 0
ABCD0001111000011110111111

الـ 1 المعزول

m11 = AB′CD → AB = 10, CD = 11

الإجابة

AB = 10, CD = 11
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّابات

الإجابة: fout = 10 kHz

القلّابات والعدّادات: لا يتغير القلّاب إلا عند الحافة الفعالة للساعة. يَنسخ 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.

قسمة التردد

fout = 50 kHz / 5 = 10 kHz

الإجابة

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

الإجابة: φ(25) = 20

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

العوامل الأولية

25 = 52

دالة أويلر φ

φ(25) = 25 − 5 = 20

الإجابة

φ(25) = 20
8.نظرية الأعداد والحساب المودولي

الإجابة: 350 mod 31 = 5

القوى المودولية و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.

الأس الثنائي

50 = 1100102 = 32 + 16 + 2

التربيع المتكرر

31 ≡ 3 (mod 31)
32 ≡ 9 (mod 31)
34 ≡ 19 (mod 31)
38 ≡ 20 (mod 31)
316 ≡ 28 (mod 31)
332 ≡ 9 (mod 31)

اضرب القوى المطلوبة

350 ≡ 9·28·9 ≡ 5 (mod 31)

الإجابة

350 mod 31 = 5
9.الخوارزميات والتعقيد

الإجابة: B · مصفوفة مرتبة مسبقًا

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

في المدخلات المرتبة يكون المحور دائمًا الأصغر، فيكون أحد الجانبين فارغًا والآخر فيه n − 1 عنصر، فيكون التعقيد O(n²).

الإجابة

B · مصفوفة مرتبة مسبقًا
10.الخوارزميات والتعقيد

الإجابة: A · لا توجد خوارزمية تستطيع أن تقرر لكل برنامج ومدخل ما إذا كان البرنامج سيتوقف

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

أثبت تورنغ أن مسألة التوقف غير قابلة للحسم: افتراض وجود خوارزمية حاسمة يؤدي إلى تناقض مع برنامج يفعل عكس ما تتنبأ به.

الإجابة

A · لا توجد خوارزمية تستطيع أن تقرر لكل برنامج ومدخل ما إذا كان البرنامج سيتوقف
11.هياكل البيانات

الإجابة: A · 14

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

ادفع 3 و4، فيعطي + القيمة 7، ثم ادفع 2، فيعطي * القيمة 7 × 2 = 14.

الإجابة

A · 14
12.هياكل البيانات

الإجابة: D · لأن تلك البتات قد تخص عناصر أخرى أيضًا، فيسبب ذلك سلبيات كاذبة

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

مسح بت مشترك سيجعل عنصرًا آخر يبدو غائبًا، ومرشحات Bloom العدّادة تحفظ عدّادات بدل البتات لتسمح بالحذف.

الإجابة

D · لأن تلك البتات قد تخص عناصر أخرى أيضًا، فيسبب ذلك سلبيات كاذبة
13.نظرية البيانات

الإجابة: H = 2520

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

عُدّ

H = (8 − 1)!/2 = 5040/2 = 2520

الإجابة

H = 2520
14.نظرية البيانات

الإجابة: N = 2

الدرجات: درجة الرأس هي عدد الحواف التي تلتقي عنده. لكل حافة طرفان، فتساوي الدرجات مجتمعةً ضعف عدد الحواف: Σ 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 1 1 1
C: 1 1 0 0 1
D: 0 1 0 0 0
E: 0 1 1 0 0

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

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

الإجابة

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

الإجابة: C · بجدول وسيط يحمل مفاتيح أجنبية إلى الطلاب والمقررات معًا

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

تحتاج علاقة متعدد إلى متعدد إلى جدول ربط (وسيط)، مثل enrolment(student_id, course_id)، وكثيرًا ما يكون له مفتاح أساسي مركّب.

الإجابة

C · بجدول وسيط يحمل مفاتيح أجنبية إلى الطلاب والمقررات معًا
16.قواعد البيانات و SQL

الإجابة: D · لأن شرط WHERE على o يرفض الصفوف المملوءة بـ NULL، فيحوّله إلى ربط داخلي

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

قيمة o.status في الصفوف غير المتطابقة NULL، فلا يكون اختبار WHERE صحيحًا؛ ونقل الشرط إلى جملة ON يُبقي كل العملاء.

الإجابة

D · لأن شرط WHERE على o يرفض الصفوف المملوءة بـ NULL، فيحوّله إلى ربط داخلي
17.شبكات الحاسوب

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

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

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

الإجابة

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

الإجابة: C · تعيد طلبات عدة استخدام اتصال TCP واحد، فتُتجنب المصافحات المتكررة

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

إعادة استخدام الاتصال تتجنب مصافحة جديدة وبدءًا بطيئًا لكل كائن، فتُحمَّل الصفحات ذات الموارد الكثيرة أسرع.

الإجابة

C · تعيد طلبات عدة استخدام اتصال TCP واحد، فتُتجنب المصافحات المتكررة
19.تقسيم شبكات IPv4

الإجابة: H = 62

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.192 = /26

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

26 − 2 = 62

الإجابة

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

الإجابة: p = 21

تلخيص المسارات: المسار التلخيصي a.b.c.0/p يغطّي كل الشبكات التي تتطابق بتاتها الأولى p. اكتب الثُمانية المختلفة للشبكة الأولى والأخيرة بالنظام الثنائي؛ عدد البتات الأولى المشتركة، زائد بتات الثُمانيات التي قبلها، هو أطول بادئة تلخيصية.

قارن البتات

217 = 11011001
222 = 11011110
البتات الأولى المشتركة: 5

طول البادئة

p = 16 + 5 = 21

الإجابة

p = /21

المسار التلخيصي: 10.6.216.0/21 (وهو يغطّي أيضًا 2 شبكة (شبكات) ليست في القائمة).

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