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

أوراق القوانين، وأهم خطوات الحل لكل موضوع، و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.أنظمة العدمتوسطة
القيم الموضعية في المتمم الثنائي1−12806413211618141211

النمط ذو 8 بتات 1011 1111 يخزّن عددًا صحيحًا بإشارة بصيغة المتمم الثنائي. ما قيمته N في النظام العشري؟

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

اضبط البتات على الناتج بـ 8 بتات لـ 1000 1000 XOR 0011 1111. ما قيمة الناتج R بالعشري؟

1000 1000XOR0011 1111
R =
3.المنطق القضوي والبراهينمتوسطة
p → (r → q)p ∧ (r → q)(p → q) ∧ (r → q)(p → r) → q

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

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

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

¬∃x A(x)
  1. 1∀x A(x)
  2. 2∃x A(x)
  3. 3∃x ¬A(x)
  4. 4∀x ¬A(x)
5.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتمتوسطة
ABC00011110011011030214151706

استخدم خريطة كارنو لإيجاد الصيغة الدنيا لمجموع الجداءات (SOP) للدالة F(A, B, C) = Σm(0, 1, 4, 5, 7). كم حرفًا L تحتوي في المجموع (المتغير ذو الشرطة يُعدّ حرفًا واحدًا)؟

F(A, B, C) = Σm(0, 1, 4, 5, 7)
L =
6.المنطق الرقمي: البوابات وخرائط كارنو والقلّاباتصعبة
TQ0​Q0​TQ1​Q1​TQ2​Q2​TQ3​Q3​CLKDOWN

عدّاد ثنائي تنازلي بـ 4 بتّات يبدأ من 3 (بالنظام العشري، Q = 0011). أي عدّ Q (بالنظام العشري) يُظهر بعد 31 نبضات ساعة؟

Q0 = 331n = 4
Q =
7.نظرية الأعداد والحساب المودوليمتوسطة

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

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

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

a = 7k = 20n = 26
720 mod 26 =
9.الخوارزميات والتعقيدمتوسطة

ما حل علاقة التكرار T(n) = T(n − 1) + O(n)؟

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

ما حل علاقة التكرار T(n) = 2T(n/2) + n log n؟

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

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

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

في المخزن المؤقت الدائري (circular buffer)، قد يعني front == rear الفراغ أو الامتلاء. ما الطريقة الشائعة للتمييز بينهما؟

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

بيان متصل له 18 رؤوس و25 حافة. كم حافة k يجب حذفها لتبقى شجرة ممتدة؟

|V| = 18|E| = 25
k =
14.نظرية البياناتصعبة
91281210153146ABCDEFG

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

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

في جدول orders خمسة صفوف، يشير كل منها إلى عميل موجود، وفي جدول customers ثلاثة صفوف. كم صفًا يُرجع INNER JOIN على customer_id؟

  1. A15
  2. B8
  3. C3
  4. D5
16.قواعد البيانات و SQLصعبة

في جدول مليون صف وعمود منطقي is_active قيمته TRUE في 95% منها. لماذا قد يتجاهل المُحسِّن فهرسًا على is_active في WHERE is_active = TRUE؟

  1. Aلأن معظم الصفوف مطابقة، فيكون المسح الكامل للجدول أرخص من عمليات بحث كثيرة في الفهرس
  2. Bلأن الفهرس يعامل TRUE على أنها NULL
  3. Cلأن المُحسِّن لا يستخدم الفهارس أبدًا في جمل WHERE
  4. Dلأنه لا يمكن إنشاء فهارس على الأعمدة المنطقية
17.شبكات الحاسوبمتوسطة

يُستخدم NAT (ترجمة عناوين الشبكة) أساسًا من أجل:

  1. Aالسماح لأجهزة كثيرة ذات عناوين خاصة بمشاركة عنوان IP عام واحد
  2. Bترجمة أسماء النطاقات إلى عناوين IP للأجهزة على الشبكة المحلية
  3. Cزيادة سرعة كابل الشبكة
  4. Dتشفير حركة المرور بين موقعين
18.شبكات الحاسوبصعبة

ماذا تفعل إعادة الإرسال السريعة (fast retransmit) في TCP؟

  1. Aتعيد إرسال كل مقطع مرتين احتياطًا
  2. Bتضاعف النافذة بعد كل فقد
  3. Cتتخطى المصافحة الثلاثية عند إعادة الاتصال بمضيفين معروفين، فتُعاد البيانات أسرع
  4. Dتعيد إرسال مقطع بعد ثلاثة ACK مكررة، دون انتظار انتهاء المهلة
19.تقسيم شبكات IPv4متوسطة
/24 → /2911111111111111111111111111111000بتات الشبكةبتات المضيف

يجب تقسيم الشبكة 192.168.10.0/24 إلى 30 شبكات فرعية متساوية على الأقل. إذا استعرت أقل عدد ممكن من البتات، فكم مضيفًا قابلًا للاستخدام H في كل شبكة فرعية؟

192.168.10.0/2430 subnets
H =
20.تقسيم شبكات IPv4صعبة
الثُمانية الأخيرة = 175112806413201618141211الشبكةالمضيف

عنوان مضيف هو 10.20.46.175/29. ما الرقم الأخير (الثُمانية الرابعة) x من عنوان البث لشبكته الفرعية؟

10.20.46.175/29
x =

3المحاليل

1.أنظمة العد

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

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

اجمع القيم

تحتفظ البتات الأخرى بقيمها الموجبة المعتادة.

−128 + 32 + 16 + 8 + 4 + 2 + 1 = −65

الإجابة

N = −65
2.أنظمة العد

الإجابة: R = 183

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

بتًا ببت

تعطي XOR القيمة 1 حيث يختلف البتان.

1000 1000
XOR 0011 1111
= 1011 0111

قيمة الناتج

1011 0111₂ = 183

الإجابة

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

الإجابة: p → (r → 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).

القانون

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

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

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

الإجابة

p → (r → q)

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

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

الإجابة: ∀x ¬A(x)

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

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

¬∃x A(x) ≡ ∀x ¬A(x)

الإجابة

∀x ¬A(x)

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

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

الإجابة: L = 3

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

ABC00011110011011030214151706

جمّع الآحاد

كل مجموعة مستطيل من 2ᵏ خلية؛ وخلايا الحافة جارة للخلايا على الحافة المقابلة.

B′
AC

الصيغة الدنيا SOP

F = B′ + AC
L = 3

الإجابة

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

الإجابة: Q = 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.

الدورات الكاملة

كل 16 نبضة تعيد العدّاد إلى الحالة نفسها.

31 = 1·16 + 15

العدّ بعد النبضات المتبقية

Q = (3 − 15) mod 16 = 4
Q = 0100₂

الإجابة

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

الإجابة: φ(169) = 156

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

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

169 = 132

دالة أويلر φ

φ(169) = 169 − 13 = 156

الإجابة

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

الإجابة: 720 mod 26 = 3

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

الأس الثنائي

20 = 101002 = 16 + 4

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

71 ≡ 7 (mod 26)
72 ≡ 23 (mod 26)
74 ≡ 9 (mod 26)
78 ≡ 3 (mod 26)
716 ≡ 9 (mod 26)

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

720 ≡ 9·9 ≡ 3 (mod 26)

الإجابة

720 mod 26 = 3
9.الخوارزميات والتعقيد

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

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

يبلغ مجموع العمل نحو n² / 2، وهذه علاقة تكرار الفرز بالاختيار أو الفرز السريع مع أسوأ محور.

الإجابة

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

الإجابة: B · Θ(n log² n)

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

يُجري المستوى k نحو n log(n / 2ᵏ) عملًا، والجمع على log n مستوى يعطي Θ(n log² n)، وهي الحالة الثانية الموسعة من النظرية الرئيسية.

الإجابة

B · Θ(n log² n)
11.هياكل البيانات

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

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

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

الإجابة

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

الإجابة: A · الاحتفاظ بعدّاد منفصل للعناصر، أو ترك خانة واحدة غير مستخدمة دائمًا

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

مع العدّاد يعني الفراغ count = 0 ويعني الامتلاء count = capacity، ومع خانة فارغة واحدة يُعرَّف الامتلاء بأنه (rear + 1) mod n == front.

الإجابة

A · الاحتفاظ بعدّاد منفصل للعناصر، أو ترك خانة واحدة غير مستخدمة دائمًا
13.نظرية البيانات

الإجابة: k = 8

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

حواف الشجرة الممتدة

18 − 1 = 17

الحواف المراد حذفها

k = 25 − 17 = 8

الإجابة

k = 8
14.نظرية البيانات

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

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

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

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

A (0): B: 9, C: 12
B (9): D: 17
C (12): E: 24
D (17): F: 32, G: 31
E (24): F: 27, G: 30
F (27)
G (30)

أقصر مسار

A → C → E → F
d(F) = 27

الإجابة

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

الإجابة: D · 5

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

يجد كل طلب عميلًا واحدًا مطابقًا بالضبط، فيُرجع الربط صفًا واحدًا لكل طلب: 5 صفوف.

الإجابة

D · 5
16.قواعد البيانات و SQL

الإجابة: A · لأن معظم الصفوف مطابقة، فيكون المسح الكامل للجدول أرخص من عمليات بحث كثيرة في الفهرس

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

يفيد الفهرس عندما يضيّق البحث إلى صفوف قليلة؛ أما عندما تتأهل معظم الصفوف فتكلّف عمليات البحث العشوائية في الفهرس أكثر من قراءة الجدول تتابعيًا.

الإجابة

A · لأن معظم الصفوف مطابقة، فيكون المسح الكامل للجدول أرخص من عمليات بحث كثيرة في الفهرس
17.شبكات الحاسوب

الإجابة: A · السماح لأجهزة كثيرة ذات عناوين خاصة بمشاركة عنوان IP عام واحد

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

يعيد NAT كتابة العناوين (والمنافذ) لكي تتمكن الشبكات الخاصة من الوصول إلى الإنترنت عبر عدد أقل من العناوين العامة.

الإجابة

A · السماح لأجهزة كثيرة ذات عناوين خاصة بمشاركة عنوان IP عام واحد
18.شبكات الحاسوب

الإجابة: D · تعيد إرسال مقطع بعد ثلاثة ACK مكررة، دون انتظار انتهاء المهلة

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

تشير ثلاثة ACK مكررة بقوة إلى فقد مقطع واحد، فيعيد TCP إرساله فورًا. وهذا يتعافى أسرع بكثير من انتظار مؤقت إعادة الإرسال.

الإجابة

D · تعيد إرسال مقطع بعد ثلاثة ACK مكررة، دون انتظار انتهاء المهلة
19.تقسيم شبكات IPv4

الإجابة: H = 6

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

البتات المستعارة

25 = 32 ≥ 30 → b = 5, /29

المضيفون في كل شبكة فرعية

23 − 2 = 6

الإجابة

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

الإجابة: x = 175

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

حجم الكتلة

23 = 8

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

الشبكة: ⌊175/8⌋·8 = 168
البث: 168 + 8 − 1 = 175
المضيفون القابلون للاستخدام: 169 … 174

الإجابة

x = 175

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