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

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

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

N = −228 bit
U =
2.ระบบเลขยาก
รหัส 1853 ตัว, b = ? บิต?2ᵇ⁻¹…?4?2?1

ระบบต้องให้รหัสฐานสองความยาวเท่ากันแก่สิ่งของ 1853 ชิ้น ชิ้นละหนึ่งรหัส ต้องใช้อย่างน้อยกี่บิต b

1853
b = bit
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
ซ้ำซ้อน (tautology)ขัดแย้ง (contradiction)contingency

(q ∧ (q → r)) → r เป็น tautology, contradiction หรือ contingency ให้คลิกคำตอบของคุณ

(q ∧ (q → r)) → r
  1. 1ซ้ำซ้อน (tautology)
  2. 2ขัดแย้ง (contradiction)
  3. 3contingency
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
∃x ∃y ¬R(x, y)∀x ∃y ¬R(x, y)∀x ∀y ¬R(x, y)∃x ∀y ¬R(x, y)

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

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

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

F(A, B, C, D) = Σm(2, 3, 5, 9, 11)
N =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
ABCD00011110000111101001X31204150716112113115X1408X9011010

จงหารูป SOP ที่น้อยที่สุดของ F(A, B, C, D) = Σm(0, 2, 5, 6, 12, 13, 15) + d(3, 9, 14) โดย d แทนเงื่อนไขไม่สนใจ มีกี่พจน์ผลคูณ N

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

จงหาฟังก์ชันโทเทียนต์ของออยเลอร์ φ(484) ซึ่งเป็นจำนวนของจำนวนเต็มตั้งแต่ 1 ถึง 484 ที่เป็นจำนวนเฉพาะสัมพัทธ์กับ 484

n = 484 = 22·112
φ(484) =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก
mc = me​ mod ncm = cd​ mod nm(n, e) = (731, 17)d = ?

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

p = 17q = 43e = 17
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.อัลกอริทึมและความซับซ้อนยาก

ปัญหาหนึ่งเป็น NP-complete ถ้ามัน

  1. Aแก้ไม่ได้เลย
  2. Bอยู่ใน NP และทุกปัญหา NP ลดรูปมาเป็นมันได้ในเวลาพหุนาม
  3. Cแก้ได้ในเวลาพหุนาม
  4. Dอยู่นอก NP แต่ยากกว่าทุกปัญหา NP เช่น ปัญหาการหยุด
11.โครงสร้างข้อมูลปานกลาง

คิวถูกสร้างด้วยสแตกสองตัว: push ลงสแตก "in" และ pop จากสแตก "out" โดยเติมจาก "in" เมื่อว่าง ต้นทุนกระจายต่อการดำเนินการคือเท่าใด

  1. AO(n)
  2. BO(n²)
  3. CO(1)
  4. DO(log n)
12.โครงสร้างข้อมูลยาก

โครงสร้างใดช่วยคำนวณค่าสูงสุดของทุกหน้าต่างขนาด k ในอาร์เรย์ในเวลารวม O(n)

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

กราฟบริบูรณ์ K8 มีวงจรแฮมิลตันที่แตกต่างกันกี่วงจร H วงจรที่ต่างกันเพียงจุดยอดเริ่มต้นหรือทิศทางนับเป็นวงจรเดียวกัน

K8
H =
14.ทฤษฎีกราฟยาก
ABCDE

มีวอล์กความยาว 2 จาก E ไป C กี่วอล์ก วอล์กอาจซ้ำจุดยอดและเส้นเชื่อมได้ เรียกจำนวนนี้ว่า N

M = เมทริกซ์ประชิดL = 2
N =
15.ฐานข้อมูลและ SQLปานกลาง

ตารางมีแถวที่ col เป็น NULL แถวใดที่ WHERE col = NULL คืนมา?

  1. Aไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า
  2. Bข้อผิดพลาดในทุกฐานข้อมูล
  3. Cทุกแถวของตาราง
  4. Dเฉพาะแถวที่ col เป็น NULL เช่นเดียวกับ IS NULL
16.ฐานข้อมูลและ SQLยาก

EXPLAIN (หรือ EXPLAIN ANALYZE ใน PostgreSQL) แสดงอะไรสำหรับคิวรี?

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

ช่วงหมายเลขพอร์ต TCP/UDP ใดสงวนไว้เป็นพอร์ต "ที่รู้จักกันดี" (well-known)?

  1. A0–65535
  2. B49152–65535
  3. C0–1023
  4. D1024–49151
18.เครือข่ายคอมพิวเตอร์ยาก

ในโพรโทคอลหน้าต่างเลื่อน (sliding window) Go-Back-N ต่างจาก Selective Repeat อย่างไรหลังเฟรมหนึ่งสูญหาย?

  1. AGo-Back-N ส่งเฟรมที่หายและเฟรมหลังจากนั้นทั้งหมดซ้ำ ส่วน Selective Repeat ส่งซ้ำเฉพาะเฟรมที่หายเท่านั้น
  2. Bทั้งสองไม่เคยส่งเฟรมที่สูญหายซ้ำ
  3. Cทั้งสองส่งหน้าต่างทั้งหมดซ้ำตั้งแต่ต้น
  4. DGo-Back-N ส่งซ้ำเฉพาะเฟรมที่หาย ส่วน Selective Repeat ส่งซ้ำเฟรมนั้นและเฟรมหลังจากนั้นทั้งหมด
19.การแบ่งซับเน็ต IPv4ปานกลาง
/24 → /2711111111111111111111111111100000บิตเครือข่ายบิตโฮสต์

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

192.168.109.0/24/27ซับเน็ต 4 (ซับเน็ต 1 เริ่มที่ .0)
x =
20.การแบ่งซับเน็ต IPv4ยาก
ออกเท็ตที่สาม = 235112816413201618041211เครือข่ายโฮสต์

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

172.20.235.166/20
x =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 234

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

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

22 = 0001 0110
ที่กลับบิตแล้ว: 1110 1001
+1 → 1110 1010

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

1110 1010₂ = 256 − 22 = 234

คำตอบ

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

คำตอบ: b = 11 bit

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

กำลังของสอง

210 = 1024 < 1853
211 = 2048 ≥ 1853

คำตอบ

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

คำตอบ: ซ้ำซ้อน (tautology)

ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (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)

ตารางค่าความจริงทีละแถว

q = 1, r = 1: q → r = 1, q ∧ (q → r) = 1, (q ∧ (q → r)) → r = 1
q = 1, r = 0: q → r = 0, q ∧ (q → r) = 0, (q ∧ (q → r)) → r = 1
q = 0, r = 1: q → r = 1, q ∧ (q → r) = 0, (q ∧ (q → r)) → r = 1
q = 0, r = 0: q → r = 1, q ∧ (q → r) = 0, (q ∧ (q → r)) → r = 1

จัดประเภท

(q ∧ (q → r)) → r: 1, 1, 1, 1
เป็น 1 ทุกแถว: tautology

คำตอบ

ซ้ำซ้อน (tautology)
4.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: ∀x ∃y ¬R(x, y)

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

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

¬∃x ∀y R(x, y) ≡ ∀x ∃y ¬R(x, y)

คำตอบ

∀x ∃y ¬R(x, y)

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

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

คำตอบ: N = 3

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

ABCD000111100001111000011312041507060120130150140819111010

จัดกลุ่ม 1

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

AB′D
A′B′C
A′BC′D

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

F = AB′D + A′B′C + A′BC′D
N = 3

คำตอบ

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

คำตอบ: N = 4

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

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

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

BC′D, BCD′, A′CD′, AC′D, AB, A′B′D′, A′B′C
ABCD00011110000111101001X31204150716112113115X1408X9011010

การครอบคลุมที่น้อยที่สุด

F = BC′D + BCD′ + AB + A′B′D′
N = 4

คำตอบ

N = 4

มีการจัดกลุ่มอีกแบบที่มีขนาดเท่ากัน ซึ่งมีจำนวนพจน์และลิเทอรัลเท่ากัน

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

คำตอบ: φ(484) = 220

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

ตัวประกอบเฉพาะ

484 = 22·112

โทเทียนต์

φ(484) = φ(121)·φ(4) = 110·2 = 220

คำตอบ

φ(484) = 220
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์

คำตอบ: d = 593

เลขยกกำลังมอดูลาร์และ 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 = 17·43 = 731
φ(n) = 16·42 = 672

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

r = 672, t = 0
r = 17, q = 39, t = 1
r = 9, q = 1, t = −39
r = 8, q = 1, t = 40
r = 1, q = 8, t = −79

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

d = 593
ตรวจสอบ: 17·593 = 10081 = 15·672 + 1

คำตอบ

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

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

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

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

คำตอบ

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

คำตอบ: B · อยู่ใน NP และทุกปัญหา NP ลดรูปมาเป็นมันได้ในเวลาพหุนาม

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

ปัญหา NP-complete เป็นปัญหาที่ยากที่สุดใน NP ถ้ามีอัลกอริทึมพหุนามสำหรับปัญหาหนึ่ง ก็จะมีสำหรับทั้ง NP

คำตอบ

B · อยู่ใน NP และทุกปัญหา NP ลดรูปมาเป็นมันได้ในเวลาพหุนาม
11.โครงสร้างข้อมูล

คำตอบ: C · O(1)

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

แต่ละสมาชิกถูก push และ pop ไม่เกินสองครั้งรวม แม้การเติมหนึ่งครั้งอาจใช้ O(n) ค่าเฉลี่ยตลอดลำดับเป็น O(1)

คำตอบ

C · O(1)
12.โครงสร้างข้อมูล

คำตอบ: B · deque ที่เก็บดัชนีเรียงตามค่าจากมากไปน้อย

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

ด้านหน้าของ deque คือค่าสูงสุดของหน้าต่างเสมอ แต่ละดัชนีเข้าและออกจาก deque เพียงครั้งเดียว งานจึงเป็นเชิงเส้น

คำตอบ

B · deque ที่เก็บดัชนีเรียงตามค่าจากมากไปน้อย
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 = 1

ดีกรี: ดีกรีของจุดยอดคือจำนวนเส้นเชื่อมที่มาบรรจบที่จุดนั้น เส้นเชื่อมแต่ละเส้นมีสองปลาย ดังนั้นผลบวกของดีกรีเท่ากับสองเท่าของจำนวนเส้นเชื่อม: Σ 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 0 1
C: 1 1 0 0 1
D: 0 0 0 0 1
E: 0 1 1 1 0

เพื่อนบ้านร่วม

(M²)EC = 0·1 + 1·1 + 1·0 + 1·0 + 0·1 = 1

คำตอบ

N = 1
15.ฐานข้อมูลและ SQL

คำตอบ: A · ไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า

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

การเปรียบเทียบใด ๆ กับ NULL ด้วย = ให้ UNKNOWN และ WHERE เก็บเฉพาะแถวที่เป็น TRUE ให้ใช้ col IS NULL แทน

คำตอบ

A · ไม่มีแถวเลย เพราะการเปรียบเทียบให้ผลไม่ทราบค่า
16.ฐานข้อมูลและ SQL

คำตอบ: C · แผนการประมวลผลที่ตัวปรับแต่งเลือก เช่น การสแกนและวิธีเชื่อม

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

EXPLAIN แสดงแผน (สแกนด้วยดัชนีหรือสแกนตามลำดับ อัลกอริทึมการเชื่อม ต้นทุนโดยประมาณ) ส่วน EXPLAIN ANALYZE รันคิวรีด้วยและรายงานเวลาจริง

คำตอบ

C · แผนการประมวลผลที่ตัวปรับแต่งเลือก เช่น การสแกนและวิธีเชื่อม
17.เครือข่ายคอมพิวเตอร์

คำตอบ: C · 0–1023

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

พอร์ต 0–1023 เป็นพอร์ตที่รู้จักกันดีสำหรับบริการมาตรฐาน 1024–49151 เป็นพอร์ตที่ลงทะเบียน และ 49152–65535 เป็นพอร์ตไดนามิกหรือส่วนตัว

คำตอบ

C · 0–1023
18.เครือข่ายคอมพิวเตอร์

คำตอบ: A · Go-Back-N ส่งเฟรมที่หายและเฟรมหลังจากนั้นทั้งหมดซ้ำ ส่วน Selective Repeat ส่งซ้ำเฉพาะเฟรมที่หายเท่านั้น

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

ผู้รับ Go-Back-N ทิ้งเฟรมที่มาไม่เป็นลำดับ ผู้ส่งจึงต้องส่งทุกอย่างหลังการสูญหายซ้ำ Selective Repeat เก็บเฟรมเหล่านั้นไว้ในบัฟเฟอร์และขอเฉพาะเฟรมที่ขาด

คำตอบ

A · Go-Back-N ส่งเฟรมที่หายและเฟรมหลังจากนั้นทั้งหมดซ้ำ ส่วน Selective Repeat ส่งซ้ำเฉพาะเฟรมที่หายเท่านั้น
19.การแบ่งซับเน็ต IPv4

คำตอบ: x = 96

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

ขนาดบล็อก

25 = 32

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

เครือข่าย: (4 − 1)·32 = 96
บรอดคาสต์: 96 + 32 − 1 = 127

คำตอบ

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

คำตอบ: x = 224

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

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

24 = 16

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

เครือข่าย: 172.20.224.0
บรอดคาสต์: 172.20.239.255

คำตอบ

x = 224

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