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

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

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

N = −958 bit
U =
2.ระบบเลขยาก
12 บิต two's complement, N = ??เครื่องหมาย???????????

จำนวนเต็มที่ติดลบมากที่สุด N ที่เก็บได้ใน two's complement 12 บิตคือเท่าใด

12 bit
N =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
pqr(¬p ∧ r) ∧ q¬((¬p ∧ r) ∧ q)((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q)111?110?101?100?011?010?001?000?

ในตารางค่าความจริง 8 แถวของ ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) มีกี่แถวที่เป็นจริง เรียกจำนวนนี้ว่า N

((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q)
N =
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
bcc → b¬c¬b11100100

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

c → b¬c∴ ¬b
  1. 1b = 1, c = 1
  2. 2b = 1, c = 0
  3. 3b = 0, c = 1
  4. 4b = 0, c = 0
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABCD000111100001111000011302140517061121131150141819111110

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

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

จงหารูป SOP ที่น้อยที่สุดของ F(A, B, C, D) = Σm(0, 1, 4, 7, 15) + d(2, 5, 9, 11, 12, 14) โดย d แทนเงื่อนไขไม่สนใจ มีกี่ลิเทอรัล L

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

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

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

จงแก้ 15x ≡ 12 (mod 36) ให้คำตอบที่เป็นบวกและน้อยที่สุด x

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

ข้อใดเกี่ยวกับฟังก์ชันเรียกซ้ำที่ไม่มีกรณีฐานที่ไปถึงได้ถูกต้อง

  1. Aคืนค่า 0 โดยอัตโนมัติ
  2. Bเรียกตัวเองต่อไปจนสแต็กการเรียกล้น
  3. Cคอมไพเลอร์แปลงเป็นลูปที่จบอย่างปลอดภัยเสมอ
  4. Dทำงานในเวลา O(1)
10.อัลกอริทึมและความซับซ้อนยาก

ปัญหาที่ตัดสินไม่ได้ (undecidable) ต่างจากปัญหาที่จัดการไม่ได้ (intractable) อย่างไร

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

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

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

segment tree มักใช้เพื่อ

  1. Aตอบคำถามช่วง (เช่น ผลรวมช่วง) และอัปเดตใน O(log n)
  2. Bสร้างสแตก
  3. Cเรียงสตริงตามตัวอักษรโดยเก็บแต่ละคำนำหน้าไว้ในโหนดต้นไม้แยกกัน
  4. Dเก็บเส้นเชื่อมของกราฟ
13.ทฤษฎีกราฟปานกลาง
ABCDEFGวงจรออยเลอร์ทางเดินออยเลอร์ ไม่มีวงจรไม่ใช่ทั้งสองอย่าง

กราฟเชื่อมโยงนี้มีวงจรออยเลอร์ ทางเดินออยเลอร์ที่ไม่ใช่วงจร หรือไม่มีทั้งสองอย่าง ให้คลิกคำตอบของคุณ

|V| = 7|E| = 7
  1. 1วงจรออยเลอร์
  2. 2ทางเดินออยเลอร์ ไม่มีวงจร
  3. 3ไม่ใช่ทั้งสองอย่าง
14.ทฤษฎีกราฟยาก
41491511421ABCDEF

ใช้ขั้นตอนวิธีของไดก์สตราเพื่อหาความยาว d(F) ของเส้นทางที่สั้นที่สุดจาก A ไป F ในกราฟถ่วงน้ำหนัก

เริ่มต้น: Aสิ้นสุด: F
d(F) =
15.ฐานข้อมูลและ SQLปานกลาง

ในพีชคณิตเชิงสัมพันธ์ ตัวดำเนินการการเลือก (σ) สอดคล้องกับอนุประโยค SQL ใด?

  1. AORDER BY
  2. BWHERE
  3. Cรายการ SELECT
  4. DGROUP BY
16.ฐานข้อมูลและ SQLยาก

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

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

โฮสต์ใดอยู่ในซับเน็ต /16 เดียวกับ 10.1.2.3?

  1. A10.1.200.5
  2. B10.0.2.3
  3. C11.1.2.3
  4. D10.2.2.3
18.เครือข่ายคอมพิวเตอร์ยาก

การบล็อกหัวแถว (head-of-line blocking) ใน HTTP/2 บน TCP เกิดขึ้นเพราะ:

  1. Aเซกเมนต์ TCP ที่สูญหายทำให้ทุกสตรีมที่มัลติเพล็กซ์ล่าช้าจนกว่าจะส่งซ้ำ
  2. Bเซิร์ฟเวอร์รองรับคำขอแบบขนานไม่ได้
  3. Cแต่ละคำขอต้องใช้การเชื่อมต่อ TCP ใหม่ของตนเอง คำขอที่ตามมาจึงต้องรอในคิว
  4. DHTTP/2 ใช้ UDP
19.การแบ่งซับเน็ต IPv4ปานกลาง
/24 → /2811111111111111111111111111110000บิตเครือข่ายบิตโฮสต์

เครือข่าย 192.168.10.0/24 ต้องแบ่งเป็นซับเน็ตขนาดเท่ากันอย่างน้อย 16 ซับเน็ต หากยืมบิตให้น้อยที่สุด แต่ละซับเน็ตมีโฮสต์ที่ใช้ได้กี่เครื่อง H

192.168.10.0/2416 subnets
H =
20.การแบ่งซับเน็ต IPv4ยาก
ออคเต็ตสุดท้าย = 88012816403211618040201เครือข่ายโฮสต์

โฮสต์มีที่อยู่ 10.20.192.88/29 ออคเต็ตที่สี่ x ของที่อยู่เครือข่ายคือเท่าใด

10.20.192.88/29
x =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 161

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

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

95 = 0101 1111
ที่กลับบิตแล้ว: 1010 0000
+1 → 1010 0001

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

1010 0001₂ = 256 − 95 = 161

คำตอบ

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

คำตอบ: N = −2048

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

ค่าที่ติดลบมากที่สุด

−211 = −2048

คำตอบ

N = −2048
3.ตรรกศาสตร์ประพจน์และการพิสูจน์

คำตอบ: N = 3

ตารางค่าความจริง: สูตรที่มีตัวแปรต่างกัน n ตัวมี 2ⁿ แถว หนึ่งแถวต่อทุกชุดของค่าความจริง (1 = จริง, 0 = เท็จ) ทำจากด้านในออกมาและให้ทุกประพจน์ย่อยมีคอลัมน์ของตัวเอง ¬a กลับค่า a ∧ b เป็น 1 เฉพาะเมื่อทั้งสองเป็น 1 a ∨ b เป็น 0 เฉพาะเมื่อทั้งสองเป็น 0 a → b เป็น 0 เฉพาะเมื่อ a = 1 และ b = 0 a ↔ b เป็น 1 เมื่อทั้งสองข้างเท่ากัน

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

p = 1, q = 1, r = 1: ¬r = 0, ¬r ∨ p = 1, ¬q = 0, (¬r ∨ p) ∧ ¬q = 0, ¬p = 0, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 0
p = 1, q = 1, r = 0: ¬r = 1, ¬r ∨ p = 1, ¬q = 0, (¬r ∨ p) ∧ ¬q = 0, ¬p = 0, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 0
p = 1, q = 0, r = 1: ¬r = 0, ¬r ∨ p = 1, ¬q = 1, (¬r ∨ p) ∧ ¬q = 1, ¬p = 0, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 1
p = 1, q = 0, r = 0: ¬r = 1, ¬r ∨ p = 1, ¬q = 1, (¬r ∨ p) ∧ ¬q = 1, ¬p = 0, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 1
p = 0, q = 1, r = 1: ¬r = 0, ¬r ∨ p = 0, ¬q = 0, (¬r ∨ p) ∧ ¬q = 0, ¬p = 1, ¬p ∧ r = 1, (¬p ∧ r) ∧ q = 1, ¬((¬p ∧ r) ∧ q) = 0, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 0
p = 0, q = 1, r = 0: ¬r = 1, ¬r ∨ p = 1, ¬q = 0, (¬r ∨ p) ∧ ¬q = 0, ¬p = 1, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 0
p = 0, q = 0, r = 1: ¬r = 0, ¬r ∨ p = 0, ¬q = 1, (¬r ∨ p) ∧ ¬q = 0, ¬p = 1, ¬p ∧ r = 1, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 0
p = 0, q = 0, r = 0: ¬r = 1, ¬r ∨ p = 1, ¬q = 1, (¬r ∨ p) ∧ ¬q = 1, ¬p = 1, ¬p ∧ r = 0, (¬p ∧ r) ∧ q = 0, ¬((¬p ∧ r) ∧ q) = 1, ((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q) = 1

นับแถวที่มีค่าเป็น 1

((¬r ∨ p) ∧ ¬q) ∧ ¬((¬p ∧ r) ∧ q): 0, 0, 1, 1, 0, 0, 0, 1
N = 3

คำตอบ

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

คำตอบ: b = 1, c = 0

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

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

b = 1, c = 1: 1 0 | 0
b = 1, c = 0: 1 1 | 0
b = 0, c = 1: 0 0 | 1
b = 0, c = 0: 1 1 | 1

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

b = 1, c = 0

คำตอบ

b = 1, c = 0

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

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

คำตอบ: N = 4

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

ABCD000111100001111000011302140517061121131150141819111110

จัดกลุ่ม 1

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

CD
BC′D′
AD
AB′

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

F = CD + BC′D′ + AD + AB′
N = 4

คำตอบ

N = 4

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

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

คำตอบ: L = 5

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

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

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

B′C′D, BC′D′, BCD, A′C′, ACD, A′B′D′, A′BD, ABC
ABCD0001111000011110101103X214X51706X12013115X1408X9X11010

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

F = BCD + A′C′
L = 5

คำตอบ

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

คำตอบ: 8−1 mod 47 = 6

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

r = 47, t = 0
r = 8, q = 5, t = 1
r = 7, q = 1, t = −5
r = 1, q = 7, t = 6

อินเวอร์ส

1 ≡ 6·8 (mod 47)
x = 6
ตรวจสอบ: 8·6 = 48 = 1·47 + 1

คำตอบ

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

คำตอบ: x = 8

ตัวผกผันและความสอดคล้อง: 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(15, 36) = 3
5x ≡ 4 (mod 12)

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

5−1 ≡ 5 (mod 12) → x ≡ 8 (mod 12)

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

x ∈ {8, 20, 32}
x = 8

คำตอบ

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

คำตอบ: B · เรียกตัวเองต่อไปจนสแต็กการเรียกล้น

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

ถ้าไม่มีกรณีฐาน การเรียกซ้ำจะไม่หยุด ในทางปฏิบัติหน่วยความจำสำหรับเฟรมสแต็กหมดและโปรแกรมล่ม

คำตอบ

B · เรียกตัวเองต่อไปจนสแต็กการเรียกล้น
10.อัลกอริทึมและความซับซ้อน

คำตอบ: D · ปัญหาที่ตัดสินไม่ได้ไม่มีอัลกอริทึมสำหรับทุกอินพุต ส่วนปัญหาที่จัดการไม่ได้มีอัลกอริทึมแต่ช้าเกินไป

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

ปัญหาการหยุดไม่มีอัลกอริทึมเลย ส่วนปัญหา NP-hard เช่น TSP แก้ได้ด้วยกำลังเดรัจฉาน เพียงแต่ไม่ได้ในเวลาพหุนามที่ทราบ

คำตอบ

D · ปัญหาที่ตัดสินไม่ได้ไม่มีอัลกอริทึมสำหรับทุกอินพุต ส่วนปัญหาที่จัดการไม่ได้มีอัลกอริทึมแต่ช้าเกินไป
11.โครงสร้างข้อมูล

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

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

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

คำตอบ

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

คำตอบ: A · ตอบคำถามช่วง (เช่น ผลรวมช่วง) และอัปเดตใน O(log n)

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

Segment tree เก็บค่ารวมของช่วง รองรับคำถามช่วงและการอัปเดตจุดในเวลา O(log n)

คำตอบ

A · ตอบคำถามช่วง (เช่น ผลรวมช่วง) และอัปเดตใน O(log n)
13.ทฤษฎีกราฟ

คำตอบ: ไม่ใช่ทั้งสองอย่าง

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

ดีกรี

deg(A) = 1, deg(B) = 4, deg(C) = 1, deg(D) = 3, deg(E) = 2, deg(F) = 1, deg(G) = 2

จุดยอดคี่

A, C, D, F → 4
ไม่ใช่ทั้งสองอย่าง

คำตอบ

ไม่ใช่ทั้งสองอย่าง
14.ทฤษฎีกราฟ

คำตอบ: d(F) = 21

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

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

แต่ละบรรทัด: จุดยอดที่ยืนยัน ระยะทางสุดท้ายของมัน และเพื่อนบ้านที่ระยะทางดีขึ้น

A (0): C: 4
C (4): B: 18, E: 19
B (18): D: 27
E (19): F: 21
F (21): D: 25
D (25)

เส้นทางที่สั้นที่สุด

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

คำตอบ

d(F) = 21
15.ฐานข้อมูลและ SQL

คำตอบ: B · WHERE

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

σcondition(R) คืนทูเพิลของ R ที่เป็นไปตามเงื่อนไข เหมือนอนุประโยค WHERE

คำตอบ

B · WHERE
16.ฐานข้อมูลและ SQL

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

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

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

คำตอบ

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

คำตอบ: A · 10.1.200.5

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

เมื่อเป็น /16 สิบหกบิตแรก (10.1) เป็นส่วนเครือข่าย มีเพียง 10.1.200.5 ที่ใช้ร่วมกัน จึงอยู่ใน 10.1.0.0/16

คำตอบ

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

คำตอบ: A · เซกเมนต์ TCP ที่สูญหายทำให้ทุกสตรีมที่มัลติเพล็กซ์ล่าช้าจนกว่าจะส่งซ้ำ

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

TCP ส่งไบต์ตามลำดับ การสูญหายครั้งเดียวจึงทำให้ทุกสตรีมในการเชื่อมต่อหยุดชะงัก QUIC (HTTP/3) จัดการสตรีมแยกกันบน UDP

คำตอบ

A · เซกเมนต์ TCP ที่สูญหายทำให้ทุกสตรีมที่มัลติเพล็กซ์ล่าช้าจนกว่าจะส่งซ้ำ
19.การแบ่งซับเน็ต IPv4

คำตอบ: H = 14

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

บิตที่ต้องยืม

24 = 16 ≥ 16 → b = 4, /28

โฮสต์ต่อซับเน็ต

24 − 2 = 14

คำตอบ

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

คำตอบ: x = 88

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

ขนาดบล็อก

23 = 8

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

เครือข่าย: ⌊88/8⌋·8 = 88
บรอดคาสต์: 88 + 8 − 1 = 95
โฮสต์ที่ใช้ได้: 89 … 94

คำตอบ

x = 88

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