พื้นฐานวิทยาการคอมพิวเตอร์: ชุดสรุปเร่งรัด

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 20 ข้อ พร้อมเฉลยละเอียดไว้ท้ายเล่ม

โจทย์ใหม่กลับไปที่รายวิชา

ในหน้าต่างพิมพ์ ให้เลือก “บันทึกเป็น PDF” เพื่อเก็บสำเนาไว้ในอุปกรณ์ของคุณ

1สูตรและวิธีทำ

ระบบเลข

ค่าประจำตำแหน่ง
ฐานสอง 2k, ฐานแปด 8k, ฐานสิบหก 16k
เป็นเลขฐานสิบ
Σ dk·bk
จากเลขฐานสิบ
หารด้วยฐาน อ่านเศษจากล่างขึ้นบน
ฐานสิบหก ↔ ฐานสอง
เลขฐานสิบหกหนึ่งหลัก = 4 บิต
two’s complement
กลับบิตแล้วบวก 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)
โมดัสโพเนนส์ โมดัสโทลเลนส์
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ⁿ สถานะ; มอด N: n ที่น้อยที่สุดที่ 2ⁿ ≥ N; fout = fclk/N
ตัวนับริปเปิล
fmax = 1/(n·tpd)
ตัวนับริงและตัวนับจอห์นสัน
n และ 2n สถานะ

วิธีการ

  1. สำหรับวงจร ให้ทำจากอินพุตไปถึงเอาต์พุตทีละเกตและเขียนค่าบนทุกเส้น หรือเขียนนิพจน์ของมันแล้วเติมตารางค่าความจริง
  2. สำหรับการทำให้ง่าย ให้ใส่ 1 (และค่าไม่สนใจเป็น X) ลงในแผนที่คาร์โนห์ที่มีแถวและคอลัมน์เรียงตามรหัสเกรย์: 00, 01, 11, 10
  3. ครอบคลุม 1 ด้วยกลุ่ม 1, 2, 4, 8 หรือ 16 เซลล์ให้น้อยที่สุดและใหญ่ที่สุดเท่าที่เป็นไปได้ โดยพันข้ามขอบ แต่ละกลุ่มคือหนึ่งพจน์ผลคูณที่ประกอบด้วยตัวแปรที่คงที่ จัดกลุ่ม 0 สำหรับรูป 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
ออยเลอร์
วงจร: ดีกรีเป็นคู่ทุกจุดยอด; ทางเดิน: มีดีกรีคี่พอดี 2 จุดยอด
วงจรแฮมิลตันใน Kn
(n − 1)!/2
การปรับค่าของไดก์สตรา
d(v) = min(d(v), d(u) + w(u, v))
วอล์กความยาว 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.ระบบเลขปานกลาง
two's complement 8 บิต0−12806403201608040201

ตั้งบิตให้เก็บ −37 ใน two's complement 8 บิต อ่านเป็นจำนวนไม่มีเครื่องหมาย ค่าของรูปแบบ U เป็นเท่าใด

N = −378 bit
U =
2.ระบบเลขยาก
คลิกบิตเพื่อตั้งค่า012806403201608040201

ตั้งบิตให้เป็นผลลัพธ์ 8 บิตของ 0110 0001 XOR 0101 0010 ค่าของผลลัพธ์ R เป็นเท่าใดในเลขฐานสิบ

0110 0001XOR0101 0010
R =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
(r ∧ q) ∧ ¬¬p¬(r ∧ q) → ¬¬p¬(r ∧ q) ∧ ¬¬p¬(r ∧ q) ∧ ¬p

คุณต้องการพิสูจน์ (r ∧ q) → ¬p ด้วยข้อขัดแย้ง ควรสมมติประโยคใดตอนเริ่มต้น ให้คลิกประโยคนั้น

(r ∧ q) → ¬p
  1. 1(r ∧ q) ∧ ¬¬p
  2. 2¬(r ∧ q) → ¬¬p
  3. 3¬(r ∧ q) ∧ ¬¬p
  4. 4¬(r ∧ q) ∧ ¬p
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
∃x (A(x) ∧ ¬B(x))∀x (A(x) ∧ ¬B(x))∀x (A(x) → ¬B(x))∀x (¬A(x) → ¬B(x))

ประโยคใดสมมูลกับ ¬∃x (A(x) → B(x)) เมื่อย้ายนิเสธเข้าด้านในสุด ให้คลิกประโยคนั้น

¬∃x (A(x) → B(x))
  1. 1∃x (A(x) ∧ ¬B(x))
  2. 2∀x (A(x) ∧ ¬B(x))
  3. 3∀x (A(x) → ¬B(x))
  4. 4∀x (¬A(x) → ¬B(x))
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC00011110010011131214151706

ใช้แผนที่คาร์โนห์หารูปผลคูณของผลบวก (POS) ที่น้อยที่สุดของ F(A, B, C) = Σm(1, 2, 3, 4, 5, 7) มีกี่พจน์ผลบวก (ตัวประกอบ) N

F(A, B, C) = Σm(1, 2, 3, 4, 5, 7)
N =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
TQ0​Q0​TQ1​Q1​TQ2​Q2​CLK

ตัวนับริปเปิล (อะซิงโครนัส) 3 บิตสร้างจากฟลิปฟล็อปที่มีความหน่วงการแพร่กระจายตัวละ 10 ns เอาต์พุตทั้งหมดต้องนิ่งก่อนขอบสัญญาณนาฬิกาถัดไป จงหาความถี่นาฬิกาสูงสุด fmax

n = 3tpd = 10 ns
fmax = MHz
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ปานกลาง

จงหาตัวผกผันของ 49 มอดูโล 89: จำนวน x ที่ 0 < x < 89 และ 49·x ≡ 1 (mod 89)

a = 49n = 89
49−1 mod 89 =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก
mc = me​ mod ncm = cd​ mod nm(n, e) = (1363, 3)d = ?

กุญแจ RSA ใช้จำนวนเฉพาะ p = 29 และ q = 47 และเลขชี้กำลังสาธารณะ e = 3 จงหาเลขชี้กำลังส่วนตัว d (0 < d < φ(n))

p = 29q = 47e = 3
d =
9.อัลกอริทึมและความซับซ้อนปานกลาง

ความซับซ้อนเชิงเวลาของ for i = 1 to n: for j = 1 to i: ทำงาน O(1) คือเท่าใด

  1. AO(n log n)
  2. BO(n)
  3. CO(n²)
  4. DO(n³)
10.อัลกอริทึมและความซับซ้อนยาก

เพื่อแสดงว่าปัญหาใหม่ X เป็น NP-hard คุณต้องทำอะไร

  1. Aลดรูป X ไปเป็นปัญหา NP-hard ที่ทราบในเวลาพหุนาม
  2. Bแสดงว่า X ไม่มีอัลกอริทึมพหุนามสำหรับอินพุตเล็ก
  3. Cลดรูปปัญหา NP-hard ที่ทราบมาเป็น X ในเวลาพหุนาม
  4. Dแสดงว่า X ตรวจสอบได้ในเวลาพหุนาม
11.โครงสร้างข้อมูลปานกลาง

ต้นไม้ทวิภาคมีราก 1 ลูกซ้าย 2 ลูกขวา 3 โหนด 2 มีลูก 4 (ซ้าย) และ 5 (ขวา) การท่องแบบ preorder คืออะไร

  1. A1 2 3 4 5
  2. B4 5 2 3 1
  3. C1 2 4 5 3
  4. D4 2 5 1 3
12.โครงสร้างข้อมูลยาก

ในอัลกอริทึมต้นไม้ทอดข้ามที่น้อยที่สุดของ Kruskal โครงสร้าง union-find ใช้เพื่อ

  1. Aเรียงเส้นเชื่อมตามน้ำหนัก
  2. Bเลือกจุดยอดเริ่มต้น
  3. Cตรวจว่าปลายทั้งสองของเส้นเชื่อมเชื่อมต่อกันอยู่แล้วหรือไม่
  4. Dเก็บระยะทางปัจจุบันของแต่ละจุดยอดจากต้นทางระหว่างการค้นหา
13.ทฤษฎีกราฟปานกลาง

ต้นไม้มี 4 จุดยอดดีกรี 5, 4 จุดยอดดีกรี 2 และจุดยอดอื่นทั้งหมดเป็นใบ (ดีกรี 1) มีกี่ใบ L

4 × deg 54 × deg 2
L =
14.ทฤษฎีกราฟยาก
13312168520182ABCDEF

จงหาน้ำหนักรวม W ของต้นไม้ทอดข้ามค่าน้อยที่สุดของกราฟถ่วงน้ำหนัก

|V| = 6|E| = 9
W =
15.ฐานข้อมูลและ SQLปานกลาง

เหตุใด SELECT price * 2 AS double_price FROM t WHERE double_price > 10 จึงล้มเหลวในฐานข้อมูลส่วนใหญ่?

  1. AWHERE ถูกประเมินก่อนรายการ SELECT ชื่อแฝงจึงยังไม่มี
  2. BWHERE เปรียบเทียบได้เฉพาะคอลัมน์ข้อความ
  3. Cไม่อนุญาตให้คำนวณเลขคณิตในรายการ SELECT
  4. Dชื่อแฝงห้ามมีขีดล่าง
16.ฐานข้อมูลและ SQLยาก

คิวรีต่อไปนี้ให้ผลอะไร: SELECT name FROM students WHERE grade > (SELECT AVG(grade) FROM students)?

  1. Aนักเรียนที่มีเกรดสูงกว่าเกรดเฉลี่ย
  2. Bเกรดเฉลี่ยของนักเรียนทั้งหมด
  3. Cเฉพาะนักเรียนที่มีเกรดสูงสุด
  4. Dข้อผิดพลาด เพราะไม่อนุญาตซับคิวรีใน WHERE
17.เครือข่ายคอมพิวเตอร์ปานกลาง

เรกคอร์ด MX ใน DNS ระบุอะไร?

  1. Aเมลเซิร์ฟเวอร์ที่รับอีเมลสำหรับโดเมน
  2. Bชื่อแทนของโฮสต์อื่น
  3. Cเนมเซิร์ฟเวอร์ของโซน
  4. Dที่อยู่ IPv4 ของเว็บเซิร์ฟเวอร์
18.เครือข่ายคอมพิวเตอร์ยาก

สวิตช์ 8 พอร์ต (ไม่มี VLAN) มีหนึ่งโฮสต์ต่อพอร์ต มีคอลลิชันโดเมนและบรอดแคสต์โดเมนอย่างละกี่โดเมน?

  1. A8 คอลลิชันโดเมน 1 บรอดแคสต์โดเมน
  2. B1 คอลลิชันโดเมน 8 บรอดแคสต์โดเมน
  3. C8 คอลลิชันโดเมน 8 บรอดแคสต์โดเมน
  4. D1 คอลลิชันโดเมน 1 บรอดแคสต์โดเมน
19.การแบ่งซับเน็ต IPv4ปานกลาง
/24 → /2911111111111111111111111111111000บิตเครือข่ายบิตโฮสต์

เครือข่าย 192.168.213.0/24 ถูกแบ่งเป็นซับเน็ต /29 หมายเลข 1, 2, 3, … จากแอดเดรสต่ำสุด (ซับเน็ต 1 เริ่มที่ .0) ออกเท็ตที่สี่ x ของเน็ตเวิร์กแอดเดรสของซับเน็ต 8 คือเท่าใด

192.168.213.0/24/29ซับเน็ต 8 (ซับเน็ต 1 เริ่มที่ .0)
x =
20.การแบ่งซับเน็ต IPv4ยาก

เครือข่าย 192.168.105.0/24 ถูกแบ่งด้วย VLSM สำหรับ LAN เหล่านี้: A: 21 โฮสต์, B: 10 โฮสต์, C: 11 โฮสต์, D: 49 โฮสต์, E: 6 โฮสต์ ซับเน็ตถูกจัดสรรจาก .0 ขึ้นไป โดย LAN ที่มีโฮสต์มากที่สุดมาก่อน แต่ละ LAN ได้ซับเน็ตที่เล็กที่สุดที่พอดี ออกเท็ตที่สี่ x ของที่อยู่เครือข่ายของ LAN A คือเท่าใด

A: 21B: 10C: 11D: 49E: 6
x =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 219

การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน

กลับบิตแล้วบวกหนึ่ง

37 = 0010 0101
ที่กลับบิตแล้ว: 1101 1010
+1 → 1101 1011

อ่านเป็นแบบไม่มีเครื่องหมาย

1101 1011₂ = 256 − 37 = 219

คำตอบ

U = 219
2.ระบบเลข

คำตอบ: R = 51

การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน

ทีละบิต

XOR ให้ 1 เมื่อสองบิตต่างกัน

0110 0001
XOR 0101 0010
= 0011 0011

ค่าของผลลัพธ์

0011 0011₂ = 51

คำตอบ

R = 51
3.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: (r ∧ q) ∧ ¬¬p

ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (tautology) เป็น 1 ทุกแถว ขัดแย้ง (contradiction) เป็น 0 ทุกแถว และ contingency ไม่ใช่ทั้งสองอย่าง กฎที่มีประโยชน์: กฎของเดอมอร์แกน ¬(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 = r ∧ q, b = ¬p

นิเสธของนัย

¬(a → b) ≡ a ∧ ¬b = (r ∧ q) ∧ ¬¬p

คำตอบ

(r ∧ q) ∧ ¬¬p

ถ้าข้อสมมติทำให้เกิดข้อขัดแย้ง นัยนั้นต้องเป็นจริง

4.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: ∀x (A(x) ∧ ¬B(x))

ตัวบ่งปริมาณและการอ้างเหตุผล: ¬∀x P(x) ≡ ∃x ¬P(x) และ ¬∃x P(x) ≡ ∀x ¬P(x) ย้ายนิเสธเข้าด้านใน สลับทุกตัวบ่งปริมาณที่นิเสธผ่าน และใส่นิเสธให้สูตรด้านในด้วยกฎของประพจน์ เช่น ¬(a → b) ≡ a ∧ ¬b การอ้างเหตุผลสมเหตุสมผลเมื่อบทสรุปเป็น 1 ในทุกแถวที่สมมติฐานทั้งหมดเป็น 1 แถวเดียวที่สมมติฐานเป็นจริงแต่บทสรุปเป็นเท็จคือตัวอย่างค้านและแสดงว่าการอ้างเหตุผลนั้นไม่สมเหตุสมผล

ย้ายนิเสธเข้าด้านใน

¬∃x (A(x) → B(x)) ≡ ∀x (A(x) ∧ ¬B(x))

คำตอบ

∀x (A(x) ∧ ¬B(x))

ตัวเลือกอื่นอาจคงตัวบ่งปริมาณไว้ไม่เปลี่ยน เปลี่ยนลำดับของตัวบ่งปริมาณ หรือใส่นิเสธให้สูตรด้านในผิด

5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: N = 2

แผนที่คาร์โนห์: เซลล์เรียงตามรหัสเกรย์ (00, 01, 11, 10) ดังนั้นเซลล์ที่อยู่ติดกัน รวมถึงเซลล์ที่อยู่ตรงข้ามขอบ ต่างกันเพียงตัวแปรเดียว จัดกลุ่ม 1 เป็นสี่เหลี่ยมที่มี 1, 2, 4, 8 หรือ 16 เซลล์ ให้ใหญ่ที่สุดและมีจำนวนกลุ่มน้อยที่สุดจนครอบคลุมทุก 1 แต่ละกลุ่มคือหนึ่งพจน์ผลคูณ: ตัวแปรที่คงที่ภายในกลุ่ม กลุ่มที่มี 2ᵏ เซลล์สูญเสียตัวแปรไป k ตัว ค่าไม่สนใจ (X) ใช้เพื่อทำให้กลุ่มใหญ่ขึ้นได้ แต่ไม่จำเป็นต้องถูกครอบคลุม การจัดกลุ่ม 0 แทนจะได้รูป POS ที่น้อยที่สุด

ABC00011110010011131214151706

จัดกลุ่ม 0

ทุกกลุ่มเป็นสี่เหลี่ยมของ 2ᵏ เซลล์ เซลล์ที่ขอบเป็นเพื่อนบ้านของเซลล์ที่ขอบตรงข้าม

(A + B + C)
(A′ + B′ + C)

รูป POS ที่น้อยที่สุด

F = (A + B + C)(A′ + B′ + C)
N = 2

คำตอบ

N = 2
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อป

คำตอบ: fmax = 33.33 MHz

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา D คัดลอกอินพุต (Q⁺ = D); T สลับค่าเมื่อ T = 1; JK คงค่าสำหรับ 00 รีเซ็ตสำหรับ 01 เซตสำหรับ 10 และสลับค่าสำหรับ 11 ตัวนับฐานสอง n บิตมี 2ⁿ สถานะและนับมอดูโล 2ⁿ ตัวนับมอด N นับ 0, 1, …, N − 1 แล้ววนกลับเป็น 0 และต้องใช้ฟลิปฟล็อปจำนวน n ที่น้อยที่สุดที่ 2ⁿ ≥ N แต่ละภาคของตัวนับริปเปิลลดความถี่ลงครึ่งหนึ่ง ดังนั้นเอาต์พุตสุดท้ายของตัวนับมอด N ทำงานที่ fclk/N ตัวนับจอห์นสันที่มีฟลิปฟล็อป n ตัวมี 2n สถานะ ตัวนับริงมี n

เวลานิ่งในกรณีเลวร้ายที่สุด

T = 3·10 ns = 30 ns

ความถี่สูงสุด

fmax = 1/30 ns = 33.33 MHz

คำตอบ

fmax = 33.33 MHz
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์

คำตอบ: 49−1 mod 89 = 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)

ขั้นตอนวิธีของยูคลิดแบบขยาย

เศษ r แต่ละตัวเขียนเป็น r ≡ t·49 (mod 89)

r = 89, t = 0
r = 49, q = 1, t = 1
r = 40, q = 1, t = −1
r = 9, q = 4, t = 2
r = 4, q = 2, t = −9
r = 1, q = 4, t = 20

อินเวอร์ส

1 ≡ 20·49 (mod 89)
x = 20
ตรวจสอบ: 49·20 = 980 = 11·89 + 1

คำตอบ

49−1 mod 89 = 20
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์

คำตอบ: d = 859

เลขยกกำลังมอดูลาร์และ 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

มอดูลัสและโทเทียนต์

n = 29·47 = 1363
φ(n) = 28·46 = 1288

ขั้นตอนวิธีของยูคลิดแบบขยาย

r = 1288, t = 0
r = 3, q = 429, t = 1
r = 1, q = 3, t = −429

เลขชี้กำลังส่วนตัว

d = 859
ตรวจสอบ: 3·859 = 2577 = 2·1288 + 1

คำตอบ

d = 859
9.อัลกอริทึมและความซับซ้อน

คำตอบ: C · O(n²)

เหตุผลที่เป็นคำตอบนี้

เนื้อหาของลูปชั้นในทำงานรวม n(n + 1) / 2 ครั้ง ซึ่งยังเป็นกำลังสอง

คำตอบ

C · O(n²)
10.อัลกอริทึมและความซับซ้อน

คำตอบ: C · ลดรูปปัญหา NP-hard ที่ทราบมาเป็น X ในเวลาพหุนาม

เหตุผลที่เป็นคำตอบนี้

ถ้าปัญหายากที่ทราบแปลงเป็น X ได้อย่างมีประสิทธิภาพ อัลกอริทึมเร็วสำหรับ X ก็จะแก้ปัญหาที่ทราบได้ด้วย

คำตอบ

C · ลดรูปปัญหา NP-hard ที่ทราบมาเป็น X ในเวลาพหุนาม
11.โครงสร้างข้อมูล

คำตอบ: C · 1 2 4 5 3

เหตุผลที่เป็นคำตอบนี้

Preorder เยี่ยม 1 แล้วต้นไม้ย่อยซ้าย (2, 4, 5) แล้ว 3 ตัวเลือกอื่นคือ inorder, postorder และ level-order

คำตอบ

C · 1 2 4 5 3
12.โครงสร้างข้อมูล

คำตอบ: C · ตรวจว่าปลายทั้งสองของเส้นเชื่อมเชื่อมต่อกันอยู่แล้วหรือไม่

เหตุผลที่เป็นคำตอบนี้

Find บอกว่าปลายทั้งสองอยู่ในส่วนประกอบเดียวกันหรือไม่ ถ้าไม่ ก็เพิ่มเส้นเชื่อมและ union รวมส่วนประกอบ

คำตอบ

C · ตรวจว่าปลายทั้งสองของเส้นเชื่อมเชื่อมต่อกันอยู่แล้วหรือไม่
13.ทฤษฎีกราฟ

คำตอบ: L = 14

ออยเลอร์ แฮมิลตัน และต้นไม้: กราฟเชื่อมโยงมีวงจรออยเลอร์ (ผ่านทุกเส้นเชื่อมครั้งเดียวและกลับจุดเริ่มต้น) เมื่อทุกจุดยอดมีดีกรีคู่ และมีทางเดินออยเลอร์ที่ไม่ใช่วงจรเมื่อมีจุดยอดดีกรีคี่พอดีสองจุด ทางเดินนั้นไปจากจุดยอดคี่จุดหนึ่งถึงอีกจุดหนึ่ง วงจรแฮมิลตันผ่านทุกจุดยอดครั้งเดียว Kn มีวงจรแบบนี้ (n − 1)!/2 วงจร ต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม และกราฟเชื่อมโยงที่มี m เส้นเชื่อมจะเหลือต้นไม้ทอดข้ามหลังเอาเส้นเชื่อมออก m − n + 1 เส้น

เล็มมาการจับมือสำหรับต้นไม้

L + 28 = 2(L + 8) − 2
L = 14

คำตอบ

L = 14

ทางลัด: L = 2 + Σ (d − 2) ของจุดยอดที่มีดีกรี d ≥ 3

14.ทฤษฎีกราฟ

คำตอบ: W = 36

เส้นทางที่สั้นที่สุดและต้นไม้ทอดข้าม: ขั้นตอนวิธีของไดก์สตรายืนยันหนึ่งจุดยอดต่อรอบ: จุดยอดที่ยังไม่ยืนยันซึ่งมีระยะทางชั่วคราวน้อยที่สุด ระยะทางของมันเป็นค่าสุดท้ายแล้ว และเพื่อนบ้าน v ทุกจุดได้ d(v) = min(d(v), d(u) + w(u, v)) ขั้นตอนวิธีของครัสคัลสร้างต้นไม้ทอดข้ามค่าน้อยที่สุดโดยเลือกเส้นเชื่อมจากเบาไปหนักและข้ามเส้นที่ทำให้เกิดวัฏจักร ขั้นตอนวิธีของพริมขยายต้นไม้หนึ่งต้นจากจุดยอดเริ่มต้นโดยเพิ่มเส้นเชื่อมที่เบาที่สุดที่ออกจากต้นไม้เสมอ ต้นไม้ทอดข้ามที่มี n จุดยอดมี n − 1 เส้นเชื่อม

ขั้นตอนวิธีของครัสคัล

BE (2): เลือก
AC (3): เลือก
DE (5): เลือก
CE (8): เลือก
BC (12): ข้าม ทำให้เกิดวัฏจักร
AB (13): ข้าม ทำให้เกิดวัฏจักร
BD (16): ข้าม ทำให้เกิดวัฏจักร
EF (18): เลือก

น้ำหนักรวม

W = 2 + 3 + 5 + 8 + 18 = 36

คำตอบ

W = 36
15.ฐานข้อมูลและ SQL

คำตอบ: A · WHERE ถูกประเมินก่อนรายการ SELECT ชื่อแฝงจึงยังไม่มี

เหตุผลที่เป็นคำตอบนี้

ในเชิงตรรกะ FROM และ WHERE ทำงานก่อน SELECT จึงให้ซ้ำนิพจน์ใน WHERE หรือใช้ซับคิวรี ส่วน ORDER BY ใช้ชื่อแฝงได้เพราะทำงานหลัง SELECT

คำตอบ

A · WHERE ถูกประเมินก่อนรายการ SELECT ชื่อแฝงจึงยังไม่มี
16.ฐานข้อมูลและ SQL

คำตอบ: A · นักเรียนที่มีเกรดสูงกว่าเกรดเฉลี่ย

เหตุผลที่เป็นคำตอบนี้

ซับคิวรีสเกลาร์คำนวณค่าเฉลี่ย และคิวรีด้านนอกเก็บนักเรียนที่สูงกว่าค่านั้น

คำตอบ

A · นักเรียนที่มีเกรดสูงกว่าเกรดเฉลี่ย
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · เมลเซิร์ฟเวอร์ที่รับอีเมลสำหรับโดเมน

เหตุผลที่เป็นคำตอบนี้

เรกคอร์ด MX (mail exchange) ระบุรายชื่อเมลเซิร์ฟเวอร์พร้อมลำดับความสำคัญ เซิร์ฟเวอร์ผู้ส่งจึงรู้ว่าจะส่งอีเมลของโดเมนนั้นไปที่ใด

คำตอบ

A · เมลเซิร์ฟเวอร์ที่รับอีเมลสำหรับโดเมน
18.เครือข่ายคอมพิวเตอร์

คำตอบ: A · 8 คอลลิชันโดเมน 1 บรอดแคสต์โดเมน

เหตุผลที่เป็นคำตอบนี้

พอร์ตสวิตช์แต่ละพอร์ตเป็นคอลลิชันโดเมนของตนเอง แต่บรอดแคสต์ถูกส่งต่อไปทุกพอร์ต สวิตช์ทั้งตัวจึงเป็นบรอดแคสต์โดเมนเดียว ฮับจะให้อย่างละหนึ่ง

คำตอบ

A · 8 คอลลิชันโดเมน 1 บรอดแคสต์โดเมน
19.การแบ่งซับเน็ต IPv4

คำตอบ: x = 56

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).

ขนาดบล็อก

23 = 8

ซับเน็ตหมายเลข 8

เครือข่าย: (8 − 1)·8 = 56
บรอดคาสต์: 56 + 8 − 1 = 63

คำตอบ

x = 56
20.การแบ่งซับเน็ต IPv4

คำตอบ: x = 64

VLSM: แต่ละ LAN ได้ซับเน็ตที่เล็กที่สุดที่ 2ʰ − 2 ≥ จำนวนโฮสต์ของมัน คือพรีฟิกซ์ 32 − h การจัดสรรซับเน็ตที่ใหญ่ที่สุดก่อนทำให้ทุกบล็อกอยู่ในแนวพหุคูณของขนาดตัวเอง ที่อยู่เครือข่ายจึงได้จากการบวกขนาดบล็อก

ขนาดบล็อกของแต่ละ LAN

D: 49 โฮสต์ → 26 = 64 (/26)
A: 21 โฮสต์ → 25 = 32 (/27)
C: 11 โฮสต์ → 24 = 16 (/28)
B: 10 โฮสต์ → 24 = 16 (/28)
E: 6 โฮสต์ → 23 = 8 (/29)

การจัดสรร จากใหญ่ที่สุดก่อน

D: .0 – .63
A: .64 – .95
C: .96 – .111
B: .112 – .127
E: .128 – .135

คำตอบ

x = 64

LAN A: 192.168.105.64/27

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