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

สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 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 complement1−12816413201608140211

รูปแบบ 8 บิต 1110 0101 เก็บจำนวนเต็มมีเครื่องหมายแบบ two's complement ค่าของมัน N ในเลขฐานสิบคือเท่าใด

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

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

1011 1110XOR0001 0100
R =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
¬q ∧ p¬q ∨ p¬q ∧ ¬p¬q ∨ ¬p

สูตรใดสมมูลเชิงตรรกะกับ ¬(q ∧ p) ให้คลิกสูตรนั้น

¬(q ∧ p)
  1. 1¬q ∧ p
  2. 2¬q ∨ p
  3. 3¬q ∧ ¬p
  4. 4¬q ∨ ¬p
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
pqrq → rp → rq → p111110101100011010001000

การอ้างเหตุผลที่มีสมมติฐาน q → r; p → r และบทสรุป q → p ไม่สมเหตุสมผล ให้คลิกแถวของตารางค่าความจริงที่เป็นตัวอย่างค้าน

q → rp → r∴ q → p
  1. 1p = 1, q = 1, r = 1
  2. 2p = 1, q = 1, r = 0
  3. 3p = 1, q = 0, r = 1
  4. 4p = 1, q = 0, r = 0
  5. 5p = 0, q = 1, r = 1
  6. 6p = 0, q = 1, r = 0
  7. 7p = 0, q = 0, r = 1
  8. 8p = 0, q = 0, r = 0
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABCD0001111000011110111111

ในแผนที่คาร์โนห์นี้มี 1 เพียงตัวเดียวพอดีที่ไม่มี 1 อยู่ติดกัน จึงยังเป็นกลุ่มหนึ่งเซลล์ (มินเทอมเต็มที่มีสี่ลิเทอรัล) ในรูป SOP ที่น้อยที่สุด เพื่อนบ้านข้ามขอบแผนที่นับด้วย ให้คลิกเซลล์นั้น

F = Σm(1, 4, 5, 8, 11, 12)
  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.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
ABCD0001111000011110X00113121415X7X6X12013015114X809011X10

สำหรับ F(A, B, C, D) = Σm(2, 3, 4, 5, 14) + d(0, 6, 7, 8, 10, 12) โดย d แทนเงื่อนไขไม่สนใจ จงหาจำนวน N ของไพรม์อิมพลิแคนต์จำเป็น

F(A, B, C, D) = Σm(2, 3, 4, 5, 14) + d(0, 6, 7, 8, 10, 12)
N =
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ปานกลาง

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

a = 17n = 38
17−1 mod 38 =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก

26x ≡ 74 (mod 80) มีกี่คำตอบ N ใน {0, 1, …, 79}

26x ≡ 74 (mod 80)
N =
9.อัลกอริทึมและความซับซ้อนปานกลาง

การค้นหาในแนวกว้าง (BFS) บนกราฟที่ไม่มีน้ำหนักให้ผลเป็น

  1. Aเส้นทางสั้นที่สุดในกราฟที่มีเส้นเชื่อมน้ำหนักติดลบ
  2. Bต้นไม้ทอดข้ามที่น้อยที่สุด
  3. Cเส้นทางสั้นที่สุดในแง่จำนวนเส้นเชื่อมจากโหนดเริ่มต้น
  4. Dลำดับทอพอโลยีในทุกกราฟ
10.อัลกอริทึมและความซับซ้อนยาก

การคูณแบบ Karatsuba ตรงตาม T(n) = 3T(n/2) + O(n) ผลเฉลยคืออะไร

  1. AΘ(n²)
  2. BΘ(n log n)
  3. CΘ(nlog₂ 3) ประมาณ n1.585
  4. DΘ(n3)
11.โครงสร้างข้อมูลปานกลาง

คุณมีการอ้างอิงถึงโหนดกลางลิสต์ ในลิสต์ชนิดใดลบมันได้ใน O(1)

  1. Aลิงก์ลิสต์สองทิศทาง
  2. Bลิงก์ลิสต์เชิงเดี่ยว
  3. Cอาร์เรย์พลวัต
  4. Dอาร์เรย์เรียงลำดับ
12.โครงสร้างข้อมูลยาก

กฎของต้นไม้แดง–ดำรับประกันอะไรเกี่ยวกับความสูงของต้นไม้ที่มี n คีย์

  1. Aความสูงไม่เกิน 2 log2(n + 1)
  2. Bความสูงเท่ากับ log2 n พอดี
  3. Cความสูงไม่เกิน n / 2
  4. Dความสูงไม่เกิน log2 n + 1
13.ทฤษฎีกราฟปานกลาง

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

2 × deg 32 × deg 44 × deg 54 × deg 2
L =
14.ทฤษฎีกราฟยาก
111211122185ABCDEF

ขั้นตอนวิธีของไดก์สตราเริ่มจาก A ให้คลิกจุดยอดที่ถูกยืนยัน (ทำให้เป็นค่าถาวร) ในรอบที่ 4 โดย A เองคือรอบที่ 1

เริ่มต้น: Aรอบ 4
  1. 1A
  2. 2B
  3. 3C
  4. 4D
  5. 5E
  6. 6F
15.ฐานข้อมูลและ SQLปานกลาง

นิพจน์ตารางร่วม (common table expression, WITH name AS (...)) ให้อะไร?

  1. Aผลลัพธ์ชั่วคราวที่มีชื่อ ใช้ได้ภายในคำสั่งเดียว
  2. Bตารางถาวรที่เก็บบนดิสก์จนกว่าจะถูกลบ
  3. Cดัชนีบนคอลัมน์
  4. Dผู้ใช้ฐานข้อมูลใหม่
16.ฐานข้อมูลและ SQLยาก

ข้อเสียที่รู้จักของการแยกตารางเป็น BCNF เมื่อเทียบกับ 3NF คืออะไร?

  1. Aการแยกทำให้ข้อมูลหายเสมอเมื่อเชื่อมกลับ
  2. BBCNF ยอมให้มีความซ้ำซ้อนมากกว่า 3NF
  3. Cการพึ่งพาเชิงฟังก์ชันบางอย่างอาจตรวจสอบภายในตารางเดียวไม่ได้อีกต่อไป
  4. Dตาราง BCNF มีคีย์หลักไม่ได้
17.เครือข่ายคอมพิวเตอร์ปานกลาง

เรกคอร์ด DNS ชนิดใดแมปชื่อโฮสต์กับที่อยู่ IPv6?

  1. AAAAA
  2. BA
  3. CCNAME
  4. DMX
18.เครือข่ายคอมพิวเตอร์ยาก

ที่อยู่ใดต่อไปนี้เป็นที่อยู่ IPv4 สาธารณะ (ไม่ใช่ที่อยู่ส่วนตัวตาม RFC 1918)?

  1. A172.32.0.1
  2. B172.31.0.1
  3. C10.255.0.1
  4. D192.168.255.1
19.การแบ่งซับเน็ต IPv4ปานกลาง
/?11111111111111111111100000000000บิตเครือข่ายบิตโฮสต์

แผนกหนึ่งต้องการที่อยู่โฮสต์ 1483 ที่อยู่ในซับเน็ตเดียว ความยาวพรีฟิกซ์ที่ยาวที่สุด p (ซับเน็ตเล็กที่สุด) ที่ใหญ่พอคือเท่าใด

1483 hosts
p =
20.การแบ่งซับเน็ต IPv4ยาก
ออกเท็ตที่สาม = 244112816413211608140201เครือข่ายโฮสต์

โฮสต์มีที่อยู่ 172.20.244.214/22 ออกเท็ตที่สาม x ของที่อยู่เครือข่ายของมันคือเท่าใด

172.20.244.214/22
x =

3สารละลาย

1.ระบบเลข

คำตอบ: N = −27

ระบบเลขตามตำแหน่ง: แต่ละหลักมีค่าเท่ากับค่าของหลักนั้นคูณกำลังของฐาน ในเลขฐานสองแต่ละตำแหน่งมีค่า 1, 2, 4, 8, 16, …; ในเลขฐานสิบหก 1, 16, 256, … โดย A–F แทน 10–15 ในระบบ two's complement 8 บิต บิตซ้ายสุดมีค่า −128 แทนที่จะเป็น +128 ซึ่งเป็นวิธีเก็บจำนวนลบ

บวกค่าประจำตำแหน่ง

บิตอื่นยังคงมีค่าเป็นบวกตามปกติ

−128 + 64 + 32 + 4 + 1 = −27

คำตอบ

N = −27
2.ระบบเลข

คำตอบ: R = 170

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

ทีละบิต

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

1011 1110
XOR 0001 0100
= 1010 1010

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

1010 1010₂ = 170

คำตอบ

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

คำตอบ: ¬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 ∧ b) ≡ ¬a ∨ ¬b ตัว ∧ เปลี่ยนเป็น ∨ และทั้งสองส่วนถูกใส่นิเสธ
¬(q ∧ p) ≡ ¬q ∨ ¬p

ตรวจสอบด้วยตารางค่าความจริง

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

คำตอบ

¬q ∨ ¬p

คอลัมน์หลังเส้นคั่นคือตัวเลือกตามลำดับที่แสดง

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

คำตอบ: p = 0, q = 1, r = 1

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

สมมติฐานและบทสรุปทีละแถว

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

ตัวอย่างค้าน

p = 0, q = 1, r = 1

คำตอบ

p = 0, q = 1, r = 1

การอ้างเหตุผลรูปแบบนี้ดูเหมือนกฎที่สมเหตุสมผล แต่แถวเดียวก็เพียงพอที่จะแสดงว่าไม่ใช่

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

คำตอบ: AB = 10, CD = 11

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

เพื่อนบ้านของแต่ละ 1

1 ที่มี 1 อยู่ติดกันเข้ากลุ่มสองเซลล์หรือมากกว่าได้

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

1 ที่อยู่โดดเดี่ยว

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

คำตอบ

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

คำตอบ: N = 3

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

ไพรม์อิมพลิแคนต์

กลุ่มที่ใหญ่ที่สุดที่สร้างได้จาก 1 และ X

D′, A′C, A′B
ABCD0001111000011110X00113121415X7X6X12013015114X809011X10

ไพรม์อิมพลิแคนต์จำเป็น

D′, A′C, A′B
N = 3

คำตอบ

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

คำตอบ: 17−1 mod 38 = 9

ตัวผกผันและความสอดคล้อง: 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·17 (mod 38)

r = 38, t = 0
r = 17, q = 2, t = 1
r = 4, q = 4, t = −2
r = 1, q = 4, t = 9

อินเวอร์ส

1 ≡ 9·17 (mod 38)
x = 9
ตรวจสอบ: 17·9 = 153 = 4·38 + 1

คำตอบ

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

คำตอบ: N = 2

ตัวผกผันและความสอดคล้อง: 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

gcd(26, 80) = 2
13x ≡ 37 (mod 40)

แก้ความสอดคล้องที่ลดรูปแล้ว

13−1 ≡ 37 (mod 40) → x ≡ 9 (mod 40)

คำตอบมอดูโล 80

x ∈ {9, 49}
N = 2

คำตอบ

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

คำตอบ: C · เส้นทางสั้นที่สุดในแง่จำนวนเส้นเชื่อมจากโหนดเริ่มต้น

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

BFS เยี่ยมโหนดตามลำดับระยะทาง (จำนวนเส้นเชื่อม) จากต้นทาง จึงหาเส้นทางสั้นที่สุดแบบไม่มีน้ำหนักได้ใน O(V + E)

คำตอบ

C · เส้นทางสั้นที่สุดในแง่จำนวนเส้นเชื่อมจากโหนดเริ่มต้น
10.อัลกอริทึมและความซับซ้อน

คำตอบ: C · Θ(nlog₂ 3) ประมาณ n1.585

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

เนื่องจาก log₂ 3 ≈ 1.585 > 1 ใบจึงครอบงำตามทฤษฎีบทหลัก ดีกว่าวิธีคูณแบบโรงเรียน O(n²)

คำตอบ

C · Θ(nlog₂ 3) ประมาณ n1.585
11.โครงสร้างข้อมูล

คำตอบ: A · ลิงก์ลิสต์สองทิศทาง

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

โหนดแบบสองทิศทางรู้โหนดก่อนหน้าของตน จึงเชื่อมใหม่ระหว่าง prev และ next ได้โดยตรง ลิงก์ลิสต์เชิงเดี่ยวต้องค้นหาโหนดก่อนหน้า

คำตอบ

A · ลิงก์ลิสต์สองทิศทาง
12.โครงสร้างข้อมูล

คำตอบ: A · ความสูงไม่เกิน 2 log2(n + 1)

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

ทุกเส้นทางมีจำนวนโหนดดำเท่ากัน และโหนดแดงติดกันไม่ได้ เส้นทางที่ยาวที่สุดจึงไม่เกินสองเท่าของที่สั้นที่สุด ได้ความสูง O(log n)

คำตอบ

A · ความสูงไม่เกิน 2 log2(n + 1)
13.ทฤษฎีกราฟ

คำตอบ: L = 20

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

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

L + 42 = 2(L + 12) − 2
L = 20

คำตอบ

L = 20

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

14.ทฤษฎีกราฟ

คำตอบ: E

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

ไดก์สตราทีละรอบ

1. A (0): B: 11, C: 12
2. B (11): D: 23, E: 16
3. C (12): E: 14
4. E (14): D: 15, F: 22
5. D (15)
6. F (22)

รอบ 4

E

คำตอบ

E
15.ฐานข้อมูลและ SQL

คำตอบ: A · ผลลัพธ์ชั่วคราวที่มีชื่อ ใช้ได้ภายในคำสั่งเดียว

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

CTE ตั้งชื่อให้ซับคิวรี ทำให้คิวรีซับซ้อนอ่านง่ายขึ้น และอ้างอิงได้หลายครั้งในคำสั่งเดียวกัน

คำตอบ

A · ผลลัพธ์ชั่วคราวที่มีชื่อ ใช้ได้ภายในคำสั่งเดียว
16.ฐานข้อมูลและ SQL

คำตอบ: C · การพึ่งพาเชิงฟังก์ชันบางอย่างอาจตรวจสอบภายในตารางเดียวไม่ได้อีกต่อไป

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

การแยก BCNF แบบไม่สูญเสียมีอยู่เสมอ แต่อาจไม่รักษาการพึ่งพา ส่วน 3NF ทำได้ทั้งแบบไม่สูญเสียและรักษาการพึ่งพาเสมอ

คำตอบ

C · การพึ่งพาเชิงฟังก์ชันบางอย่างอาจตรวจสอบภายในตารางเดียวไม่ได้อีกต่อไป
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · AAAA

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

เรกคอร์ด A เก็บที่อยู่ IPv4, AAAA เก็บที่อยู่ IPv6 ส่วน MX ระบุเมลเซิร์ฟเวอร์ และ CNAME ให้ชื่อแทน (alias)

คำตอบ

A · AAAA
18.เครือข่ายคอมพิวเตอร์

คำตอบ: A · 172.32.0.1

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

172.16.0.0/12 ครอบคลุมตั้งแต่ 172.16.0.0 ถึง 172.31.255.255 ดังนั้น 172.32.0.1 อยู่นอกช่วงนั้น อีกสามที่อยู่อยู่ในช่วงส่วนตัว

คำตอบ

A · 172.32.0.1
19.การแบ่งซับเน็ต IPv4

คำตอบ: p = 21

การแบ่งซับเน็ต IPv4: ที่อยู่มี 32 บิต พรีฟิกซ์ /p บอกว่าบิตนำหน้ากี่บิตระบุเครือข่าย ส่วน 32 − p บิตที่เหลือใช้ระบุเลขโฮสต์ ซับเน็ตมี 2³²⁻ᵖ ที่อยู่ แต่ที่อยู่แรก (ที่อยู่เครือข่าย) และที่อยู่สุดท้าย (ที่อยู่บรอดคาสต์) ใช้เป็นโฮสต์ไม่ได้ จึงมีโฮสต์ได้ 2³²⁻ᵖ − 2 เครื่อง ข้อยกเว้น: /31 (ลิงก์แบบจุดต่อจุด, RFC 3021) ใช้ทั้ง 2 แอดเดรสสำหรับโฮสต์ และ /32 เป็นแอดเดรสเดียว (โฮสต์เดียวหรือลูปแบ็ก)

บิตโฮสต์ที่ต้องใช้

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

ความยาวพรีฟิกซ์

p = 32 − 11 = 21

คำตอบ

p = /21
20.การแบ่งซับเน็ต IPv4

คำตอบ: x = 244

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

ขนาดบล็อกในออกเท็ตที่สาม

22 = 4

ซับเน็ตของโฮสต์นี้

เครือข่าย: 172.20.244.0
บรอดคาสต์: 172.20.247.255

คำตอบ

x = 244

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