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

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

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

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

ตั้งบิตให้เป็นผลลัพธ์ 8 บิตของ 1010 0111 >> 1 ค่าของผลลัพธ์ R เป็นเท่าใดในเลขฐานสิบ

1010 0111>> 1
R =
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
pqrp ∨ r(p ∨ r) ∨ q¬(r ∧ (q → p)) → ((p ∨ r) ∨ q)111?110?101?100?011?010?001?000?

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

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

กำหนดสมมติฐาน q → p; p → r บทสรุปใดตามมาจากสมมติฐานเหล่านี้ ให้คลิกบทสรุปนั้น

q → pp → r
  1. 1q ∧ r
  2. 2r → q
  3. 3q → r
  4. 4¬q → ¬r
5.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปปานกลาง
ABC000111100101324576

จงทำ F = A′C′ + AB′C′ + AB′ + B′C ให้เป็นรูปผลบวกของผลคูณที่น้อยที่สุด นิพจน์ที่ทำให้ง่ายแล้วมีกี่ลิเทอรัล L

F = A′C′ + AB′C′ + AB′ + B′C
L =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
ABCD000111100001111000X1131214X51716112013X15X140809111010

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

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

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

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

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

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

ขอบเขตล่างของการเรียงลำดับแบบเปรียบเทียบในกรณีเลวร้ายที่สุดคือ

  1. AΩ(n log n)
  2. BΩ(n²)
  3. CΩ(n)
  4. DΩ(log n)
10.อัลกอริทึมและความซับซ้อนยาก

เหตุใดอัลกอริทึมของ Dijkstra จึงอาจให้ผลผิดเมื่อน้ำหนักเส้นเชื่อมบางเส้นติดลบ

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

บัฟเฟอร์วงกลม (circular buffer หรือ ring buffer) มักใช้สร้าง

  1. Aต้นไม้ค้นหาแบบทวิภาค
  2. Bฟังก์ชันแฮช
  3. Cคิวขนาดคงที่
  4. Dการท่องกราฟ
12.โครงสร้างข้อมูลยาก

เหตุใดจึงใช้ B-tree ในฐานข้อมูลและระบบไฟล์

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

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

4 × deg 43 × deg 5
L =
14.ทฤษฎีกราฟยาก
897310146811ABCDEFG

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

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

คีย์นอกถูกประกาศด้วย ON DELETE CASCADE เกิดอะไรขึ้นเมื่อแถวแม่ถูกลบ?

  1. Aแถวลูกที่อ้างอิงแถวนั้นถูกลบโดยอัตโนมัติ
  2. Bแถวแม่ถูกคัดลอกไปยังตารางเก็บถาวร
  3. Cการลบถูกปฏิเสธเสมอ
  4. Dคีย์นอกในแถวลูกถูกตั้งเป็น NULL โดยอัตโนมัติ
16.ฐานข้อมูลและ SQLยาก

ทรานแซกชัน T1 ล็อกแถว A และรอแถว B ขณะที่ T2 ล็อกแถว B และรอแถว A DBMS ทั่วไปทำอย่างไร?

  1. Aปล่อยให้ทั้งสองทรานแซกชันรอจนกว่าหนึ่งในนั้นจะคอมมิตตามปกติ
  2. Bรวมสองทรานแซกชันเป็นหนึ่ง
  3. Cตรวจพบ deadlock และยกเลิกทรานแซกชันหนึ่งเป็นผู้เสียสละ
  4. Dcommit ทั้งสองทรานแซกชันพร้อมกัน
17.เครือข่ายคอมพิวเตอร์ปานกลาง

เครือข่าย IPv4 /24 มีที่อยู่โฮสต์ที่ใช้งานได้กี่ที่อยู่?

  1. A256
  2. B254
  3. C252
  4. D255
18.เครือข่ายคอมพิวเตอร์ยาก

เหตุใด TCP จึงเลือกหมายเลขลำดับเริ่มต้นที่คาดเดาไม่ได้สำหรับแต่ละการเชื่อมต่อ?

  1. Aเพื่อเลือกเส้นทางที่ดีที่สุดไปยังปลายทางสำหรับเซกเมนต์ของการเชื่อมต่อนั้น
  2. Bเพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น
  3. Cเพื่อบีบอัดข้อมูลได้มีประสิทธิภาพขึ้น
  4. Dเพื่อเข้ารหัสเพย์โหลดของแต่ละเซกเมนต์
19.การแบ่งซับเน็ต IPv4ปานกลาง
/?11111111111111111111100000000000บิตเครือข่ายบิตโฮสต์

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

1837 hosts
p =
20.การแบ่งซับเน็ต IPv4ยาก
ออคเต็ตสุดท้าย = 60012806413211618140201เครือข่ายโฮสต์

โฮสต์มีที่อยู่ 10.20.16.60/27 ออคเต็ตที่สี่ x ของที่อยู่โฮสต์ที่ใช้ได้สุดท้ายในซับเน็ตคือเท่าใด

10.20.16.60/27
x =

3สารละลาย

1.ระบบเลข

คำตอบ: N = 31

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

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

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

16 + 8 + 4 + 2 + 1 = 31

คำตอบ

N = 31
2.ระบบเลข

คำตอบ: R = 83

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

ทีละบิต

การเลื่อนขวา 1 ตำแหน่งย้ายทุกบิตไปทางขวา 1 ตำแหน่ง บิตที่หลุดออกปลายขวาหายไปและศูนย์เข้ามาทางซ้าย

1010 0111 >> 1
= 0101 0011

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

0101 0011₂ = 83

คำตอบ

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

คำตอบ: N = 7

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

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

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

คำตอบ

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

คำตอบ: q → r

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

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

p = 1, q = 1, r = 1: q ∧ r = 1, r → q = 1, q → r = 1, ¬q → ¬r = 1
p = 1, q = 0, r = 1: q ∧ r = 0, r → q = 0, q → r = 1, ¬q → ¬r = 0
p = 0, q = 0, r = 1: q ∧ r = 0, r → q = 0, q → r = 1, ¬q → ¬r = 0
p = 0, q = 0, r = 0: q ∧ r = 0, r → q = 1, q → r = 1, ¬q → ¬r = 1

สรุป

q → r (ซิลโลจิซึมสมมุติฐาน)

คำตอบ

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

คำตอบ: L = 3

พีชคณิตแบบบูล: กฎที่ทำให้นิพจน์ง่ายขึ้นได้แก่ X + X′ = 1 และ X·X′ = 0, X + X = X, การดูดกลืน X + X·Y = X, กฎการรวม X·Y + X·Y′ = X, X + X′Y = X + Y และทฤษฎีบทฉันทามติ XY + X′Z + YZ = XY + X′Z กฎของเดอมอร์แกนเปลี่ยน (X·Y)′ เป็น X′ + Y′ และ (X + Y)′ เป็น X′·Y′ แผนที่คาร์โนห์ใช้กฎเหล่านี้ในรูปภาพ: ทุกกลุ่มของสองเซลล์ที่อยู่ติดกันคือการใช้ XY + XY′ = X หนึ่งครั้ง

มินเทอมของนิพจน์

A′C′ → m(0, 2)
AB′C′ → m(4)
AB′ → m(4, 5)
B′C → m(1, 5)
ABC00011110011011031214150706

จัดกลุ่มและอ่านค่า

F = B′ + A′C′

นับลิเทอรัล

L = 3

คำตอบ

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

คำตอบ: N = 3

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

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

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

CD, BD′, BC, A′D, A′C, A′B
ABCD000111100001111000X1131214X51716112013X15X140809111010

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

F = CD + BD′ + A′C
N = 3

คำตอบ

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

คำตอบ: 9−1 mod 58 = 13

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

r = 58, t = 0
r = 9, q = 6, t = 1
r = 4, q = 2, t = −6
r = 1, q = 4, t = 13

อินเวอร์ส

1 ≡ 13·9 (mod 58)
x = 13
ตรวจสอบ: 9·13 = 117 = 2·58 + 1

คำตอบ

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

คำตอบ: d = 853

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

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

r = 924, t = 0
r = 13, q = 71, t = 1
r = 1, q = 13, t = −71

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

d = 853
ตรวจสอบ: 13·853 = 11089 = 12·924 + 1

คำตอบ

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

คำตอบ: A · Ω(n log n)

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

การเรียงแบบเปรียบเทียบใด ๆ ต้องใช้อย่างน้อย log₂(n!) ≈ n log n ครั้งในกรณีเลวร้ายที่สุด การเรียงแบบนับ (counting sort) ทำได้ดีกว่าเพราะไม่ได้เปรียบเทียบ

คำตอบ

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

คำตอบ: A · จุดยอดถูกตรึงค่าเมื่อถูกดึงออก แต่เส้นเชื่อมติดลบที่มาทีหลังอาจให้เส้นทางที่สั้นกว่าแก่มัน

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

ขั้นตอนละโมบพึ่งพาน้ำหนักที่ไม่เป็นลบเพื่อให้ระยะทางที่ดึงออกเป็นค่าสุดท้าย เมื่อน้ำหนักอาจติดลบให้ใช้ Bellman–Ford

คำตอบ

A · จุดยอดถูกตรึงค่าเมื่อถูกดึงออก แต่เส้นเชื่อมติดลบที่มาทีหลังอาจให้เส้นทางที่สั้นกว่าแก่มัน
11.โครงสร้างข้อมูล

คำตอบ: C · คิวขนาดคงที่

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

Ring buffer ใช้ดัชนีหัวและท้ายที่วนกลับ ให้ enqueue และ dequeue ใน O(1) ด้วยหน่วยความจำคงที่

คำตอบ

C · คิวขนาดคงที่
12.โครงสร้างข้อมูล

คำตอบ: D · ตัวประกอบการแตกแขนงสูงทำให้ต้นไม้ตื้น ลดการอ่านดิสก์ที่ช้า

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

B-tree เก็บหลายคีย์ต่อโหนด ความสูงจึงน้อยและใช้การอ่านบล็อกไม่กี่ครั้งต่อการค้นหา B+ tree ยังเชื่อมใบเพื่อสแกนช่วง

คำตอบ

D · ตัวประกอบการแตกแขนงสูงทำให้ต้นไม้ตื้น ลดการอ่านดิสก์ที่ช้า
13.ทฤษฎีกราฟ

คำตอบ: L = 19

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

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

L + 31 = 2(L + 7) − 2
L = 19

คำตอบ

L = 19

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

14.ทฤษฎีกราฟ

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

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

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

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

A (0): B: 8, C: 9
B (8): D: 11, G: 16
C (9): E: 19
D (11)
G (16)
E (19): F: 25
F (25)

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

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

คำตอบ

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

คำตอบ: A · แถวลูกที่อ้างอิงแถวนั้นถูกลบโดยอัตโนมัติ

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

CASCADE ส่งต่อการลบไปยังแถวที่อ้างอิง ตัวเลือกอื่นคือ RESTRICT/NO ACTION (ปฏิเสธ) และ SET NULL

คำตอบ

A · แถวลูกที่อ้างอิงแถวนั้นถูกลบโดยอัตโนมัติ
16.ฐานข้อมูลและ SQL

คำตอบ: C · ตรวจพบ deadlock และยกเลิกทรานแซกชันหนึ่งเป็นผู้เสียสละ

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

วงจรในกราฟการรอ (wait-for graph) คือ deadlock DBMS rollback ทรานแซกชันหนึ่งเพื่อให้อีกอันดำเนินต่อได้ และผู้เสียสละอาจถูกลองใหม่

คำตอบ

C · ตรวจพบ deadlock และยกเลิกทรานแซกชันหนึ่งเป็นผู้เสียสละ
17.เครือข่ายคอมพิวเตอร์

คำตอบ: B · 254

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

/24 มีบิตโฮสต์ 8 บิต ดังนั้น 2⁸ = 256 ที่อยู่ ที่อยู่เครือข่ายและบรอดแคสต์ถูกสงวนไว้ เหลือ 254 สำหรับโฮสต์

คำตอบ

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

คำตอบ: B · เพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น

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

หมายเลขลำดับเริ่มต้นแบบสุ่มป้องกันไม่ให้ยอมรับเซกเมนต์ที่ล่าช้าจากการเชื่อมต่อเก่า และทำให้ผู้โจมตีนอกเส้นทางปลอมเซกเมนต์ที่ใช้ได้ยาก

คำตอบ

B · เพื่อหลีกเลี่ยงความสับสนกับเซกเมนต์เก่าและทำให้แทรกเซกเมนต์ปลอมได้ยากขึ้น
19.การแบ่งซับเน็ต IPv4

คำตอบ: p = 21

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

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

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

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

p = 32 − 11 = 21

คำตอบ

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

คำตอบ: x = 62

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

ขนาดบล็อก

25 = 32

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

เครือข่าย: ⌊60/32⌋·32 = 32
บรอดคาสต์: 32 + 32 − 1 = 63
โฮสต์ที่ใช้ได้: 33 … 62

คำตอบ

x = 62

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