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

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

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

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

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

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

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

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

กำหนดสมมติฐาน (c ∧ a) → b; c; ¬b บทสรุปใดตามมาจากสมมติฐานเหล่านี้ ให้คลิกบทสรุปนั้น

(c ∧ a) → bc¬b
  1. 1¬a
  2. 2b
  3. 3a
  4. 4a ∧ ¬b
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC00011110011011130204151716

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

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

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

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

จงแก้ 33x ≡ 26 (mod 35) ให้คำตอบ x ที่ 0 < x < 35

33x ≡ 26 (mod 35)
x =
8.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ยาก

47 เป็นจำนวนเฉพาะ ใช้ทฤษฎีบทเล็กของแฟร์มาเพื่อหา 315809 mod 47

p = 47k = 15809
315809 mod 47 =
9.อัลกอริทึมและความซับซ้อนปานกลาง

การกล่าวว่าอัลกอริทึม O(n²) เป็น O(n³) ด้วย ถูกต้องหรือไม่

  1. Aไม่ถูก เพราะ n³ น้อยกว่า n² เมื่อ n มาก
  2. Bถูกต้อง เพราะ Big O เป็นขอบเขตบน และ n² เติบโตไม่เร็วกว่า n³
  3. Cไม่ถูก เพราะ Big O ต้องระบุอัตราการเติบโตที่แน่นอนของฟังก์ชันเสมอ
  4. Dถูกต้อง แต่เฉพาะเมื่อ n น้อยกว่า 100
10.อัลกอริทึมและความซับซ้อนยาก

เหตุใดการค้นหาเฉลี่ยในตารางแฮชจึงเป็น O(1) แต่กรณีเลวร้ายที่สุดเป็น O(n)

  1. Aอาร์เรย์เข้าถึงใน O(n)
  2. Bคีย์จำนวนมากอาจชนกันไปอยู่ในถังเดียวกัน
  3. Cฟังก์ชันแฮชช้า
  4. Dต้องเรียงคีย์ก่อน
11.โครงสร้างข้อมูลปานกลาง

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

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

Bloom filter ตอบคำถาม "สมาชิกนี้อยู่ในเซตหรือไม่" ได้ด้วย

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

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

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

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

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

SELECT SUM(amount) FROM orders คืนอะไรเมื่อ WHERE ไม่ตรงกับแถวใดเลย?

  1. Aข้อผิดพลาด
  2. B0
  3. CNULL
  4. Dสตริงว่าง
16.ฐานข้อมูลและ SQLยาก

R(A, B, C, D) มีการพึ่งพาเชิงฟังก์ชัน A → B และ C → D คีย์ผู้สมัครคืออะไร?

  1. A{B, D}
  2. B{A, C}
  3. C{C}
  4. D{A}
17.เครือข่ายคอมพิวเตอร์ปานกลาง

อะไรระบุปลายด้านหนึ่งของการเชื่อมต่อ TCP บนอินเทอร์เน็ตได้อย่างไม่ซ้ำกัน?

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

เหตุใดจึงมีการเพิ่มตัวเลือกการปรับสเกลหน้าต่าง (window scale) ของ TCP?

  1. AUDP ต้องมีวิธีควบคุมอัตราการส่งบนเส้นทางที่คับคั่ง
  2. Bฟิลด์หน้าต่าง 16 บิตจำกัดหน้าต่างไว้ที่ 65,535 ไบต์ ซึ่งเล็กเกินไปสำหรับเส้นทางไกลที่เร็ว
  3. Cหากไม่มี TCP จะตรวจจับเซกเมนต์ที่สูญหายบนลิงก์ระยะไกลไม่ได้
  4. Dฟิลด์หน้าต่าง 32 บิตใหญ่เกินไปและสิ้นเปลืองพื้นที่ส่วนหัวในทุกเซกเมนต์ TCP ที่ส่ง
19.การแบ่งซับเน็ต IPv4ปานกลาง
255.255.252.011111111111111111111110000000000บิตเครือข่ายบิตโฮสต์

ซับเน็ตหนึ่งใช้มาสก์ 255.255.252.0 มีที่อยู่โฮสต์ที่ใช้ได้กี่ที่อยู่ H

255.255.252.0
H =
20.การแบ่งซับเน็ต IPv4ยาก
ออกเท็ตที่สาม 82 … 83012816403211608041201ร่วมกันเปลี่ยนแปลง

เราเตอร์มีเส้นทางไปยังเครือข่ายเหล่านี้: 10.43.82.0/24, 10.43.83.0/24 ความยาวพรีฟิกซ์ยาวที่สุด p ของเส้นทางสรุปเส้นเดียวที่ครอบคลุมทั้งหมดคือเท่าใด

10.43.82.0/24 … 10.43.83.0/24
p =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 197

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

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

59 = 0011 1011
ที่กลับบิตแล้ว: 1100 0100
+1 → 1100 0101

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

1100 0101₂ = 256 − 59 = 197

คำตอบ

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

คำตอบ: b = 13 bit

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

กำลังของสอง

212 = 4096 < 4545
213 = 8192 ≥ 4545

คำตอบ

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

คำตอบ: N = 5

ตารางค่าความจริง: สูตรที่มีตัวแปรต่างกัน 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: p ∨ r = 1, ¬p = 0, ¬p → r = 1, (¬p → r) ∧ q = 1, (p ∨ r) → ((¬p → r) ∧ q) = 1
p = 1, q = 1, r = 0: p ∨ r = 1, ¬p = 0, ¬p → r = 1, (¬p → r) ∧ q = 1, (p ∨ r) → ((¬p → r) ∧ q) = 1
p = 1, q = 0, r = 1: p ∨ r = 1, ¬p = 0, ¬p → r = 1, (¬p → r) ∧ q = 0, (p ∨ r) → ((¬p → r) ∧ q) = 0
p = 1, q = 0, r = 0: p ∨ r = 1, ¬p = 0, ¬p → r = 1, (¬p → r) ∧ q = 0, (p ∨ r) → ((¬p → r) ∧ q) = 0
p = 0, q = 1, r = 1: p ∨ r = 1, ¬p = 1, ¬p → r = 1, (¬p → r) ∧ q = 1, (p ∨ r) → ((¬p → r) ∧ q) = 1
p = 0, q = 1, r = 0: p ∨ r = 0, ¬p = 1, ¬p → r = 0, (¬p → r) ∧ q = 0, (p ∨ r) → ((¬p → r) ∧ q) = 1
p = 0, q = 0, r = 1: p ∨ r = 1, ¬p = 1, ¬p → r = 1, (¬p → r) ∧ q = 0, (p ∨ r) → ((¬p → r) ∧ q) = 0
p = 0, q = 0, r = 0: p ∨ r = 0, ¬p = 1, ¬p → r = 0, (¬p → r) ∧ q = 0, (p ∨ r) → ((¬p → r) ∧ q) = 1

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

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

คำตอบ

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

คำตอบ: ¬a

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

แถวที่สมมติฐานทั้งหมดเป็นจริง

a = 0, b = 0, c = 1: ¬a = 1, b = 0, a = 0, a ∧ ¬b = 0

สรุป

¬a (โมดัสโทลเลนส์กับคอนจังก์ชัน)

คำตอบ

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

คำตอบ: N = 3

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

ABC00011110011011130204151716

จัดกลุ่ม 1

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

C
A′B′
AB

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

F = C + A′B′ + AB
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

B′C′D′, BC′D, BCD′, AD, A′CD′, A′B′D′, AB′C′, ABC
ABCD00011110000111101001031204X507X6012113X1511418X9111010

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

F = B′C′D′ + BCD′ + AD + A′CD′
N = 4

คำตอบ

N = 4

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

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

คำตอบ: x = 22

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

ตัวผกผันของ 33

r = 35, t = 0
r = 33, q = 1, t = 1
r = 2, q = 16, t = −1
r = 1, q = 2, t = 17
33−1 ≡ 17 (mod 35)

แก้สมการ

x ≡ 17·26 = 442 ≡ 22 (mod 35)
ตรวจสอบ: 33·22 = 726 ≡ 26 (mod 35)

คำตอบ

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

คำตอบ: 315809 mod 47 = 28

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

ลดเลขชี้กำลัง

15809 mod 46 = 31
315809 ≡ 331 (mod 47)

เลขยกกำลังขนาดเล็ก

331 mod 47 = 28

คำตอบ

315809 mod 47 = 28
9.อัลกอริทึมและความซับซ้อน

คำตอบ: B · ถูกต้อง เพราะ Big O เป็นขอบเขตบน และ n² เติบโตไม่เร็วกว่า n³

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

Big O เป็นขอบเขตบน ข้อความนี้จึงจริงแต่ไม่แน่น ส่วน Θ(n²) ระบุอัตราการเติบโตที่แน่นอน

คำตอบ

B · ถูกต้อง เพราะ Big O เป็นขอบเขตบน และ n² เติบโตไม่เร็วกว่า n³
10.อัลกอริทึมและความซับซ้อน

คำตอบ: B · คีย์จำนวนมากอาจชนกันไปอยู่ในถังเดียวกัน

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

เมื่อมีฟังก์ชันแฮชที่ดีและตัวประกอบการโหลดเหมาะสม ถังจะสั้นโดยเฉลี่ย แต่การโจมตีหรือแฮชที่แย่อาจทำให้ทุกคีย์ไปอยู่ในถังเดียว

คำตอบ

B · คีย์จำนวนมากอาจชนกันไปอยู่ในถังเดียวกัน
11.โครงสร้างข้อมูล

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

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

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

คำตอบ

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

คำตอบ: A · อาจมีผลบวกเท็จ แต่ไม่มีผลลบเท็จ

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

ถ้าบิตใดของรายการเป็น 0 รายการนั้นไม่อยู่แน่นอน ถ้าทั้งหมดเป็น 1 น่าจะอยู่ Bloom filter แลกความแม่นยำกับหน่วยความจำที่น้อยมาก

คำตอบ

A · อาจมีผลบวกเท็จ แต่ไม่มีผลลบเท็จ
13.ทฤษฎีกราฟ

คำตอบ: วงจรออยเลอร์

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

ดีกรี

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

จุดยอดคี่

0
วงจรออยเลอร์

คำตอบ

วงจรออยเลอร์
14.ทฤษฎีกราฟ

คำตอบ: W = 37

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

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

DF (3): เลือก
BE (5): เลือก
DE (6): เลือก
BC (9): เลือก
BD (12): ข้าม ทำให้เกิดวัฏจักร
AB (14): เลือก

น้ำหนักรวม

W = 3 + 5 + 6 + 9 + 14 = 37

คำตอบ

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

คำตอบ: C · NULL

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

SUM, AVG, MIN และ MAX คืน NULL เมื่อเซตว่าง ส่วน COUNT คืน 0 COALESCE(SUM(amount), 0) ให้ 0 แทน

คำตอบ

C · NULL
16.ฐานข้อมูลและ SQL

คำตอบ: B · {A, C}

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

A และ C ไม่ถูกกำหนดโดยสิ่งใด ทุกคีย์จึงต้องมีทั้งสอง และ {A, C}+ = {A, B, C, D}

คำตอบ

B · {A, C}
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · ที่อยู่ IP ร่วมกับหมายเลขพอร์ต

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

การเชื่อมต่อ TCP ระบุด้วย IP และพอร์ตต้นทาง บวก IP และพอร์ตปลายทาง พอร์ตแยกแอปพลิเคชันจำนวนมากบนโฮสต์เดียว

คำตอบ

A · ที่อยู่ IP ร่วมกับหมายเลขพอร์ต
18.เครือข่ายคอมพิวเตอร์

คำตอบ: B · ฟิลด์หน้าต่าง 16 บิตจำกัดหน้าต่างไว้ที่ 65,535 ไบต์ ซึ่งเล็กเกินไปสำหรับเส้นทางไกลที่เร็ว

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

ส่วนหัวเดิมรองรับข้อมูลที่ยังไม่ได้รับการตอบรับได้สูงสุด 65,535 ไบต์ การปรับสเกลหน้าต่างคูณค่านี้ด้วยกำลังของสองเพื่อให้เติมเส้นทางที่มีผลคูณแบนด์วิดท์–ความล่าช้าสูงได้

คำตอบ

B · ฟิลด์หน้าต่าง 16 บิตจำกัดหน้าต่างไว้ที่ 65,535 ไบต์ ซึ่งเล็กเกินไปสำหรับเส้นทางไกลที่เร็ว
19.การแบ่งซับเน็ต IPv4

คำตอบ: H = 1022

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

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

255.255.252.0 = /22

โฮสต์ที่ใช้ได้

210 − 2 = 1022

คำตอบ

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

คำตอบ: p = 23

การสรุปเส้นทาง: เส้นทางสรุป a.b.c.0/p ครอบคลุมทุกเครือข่ายที่ p บิตแรกตรงกัน เขียนออกเท็ตที่ต่างกันของเครือข่ายแรกและสุดท้ายเป็นเลขฐานสอง จำนวนบิตนำหน้าที่ตรงกัน บวกบิตของออกเท็ตก่อนหน้า คือพรีฟิกซ์สรุปที่ยาวที่สุด

เทียบบิต

82 = 01010010
83 = 01010011
บิตนำหน้าที่ตรงกัน: 7

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

p = 16 + 7 = 23

คำตอบ

p = /23

เส้นทางสรุป: 10.43.82.0/23

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