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

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

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

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

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

4619
b = bit
3.ตรรกศาสตร์ประพจน์และการพิสูจน์ปานกลาง
¬r ∧ ¬(q ∨ p)¬r → ¬(q ∨ p)¬r ∧ (q ∨ p)r ∧ ¬(q ∨ p)

คุณต้องการพิสูจน์ r → (q ∨ p) ด้วยข้อขัดแย้ง ควรสมมติประโยคใดตอนเริ่มต้น ให้คลิกประโยคนั้น

r → (q ∨ p)
  1. 1¬r ∧ ¬(q ∨ p)
  2. 2¬r → ¬(q ∨ p)
  3. 3¬r ∧ (q ∨ p)
  4. 4r ∧ ¬(q ∨ p)
4.ตรรกศาสตร์ประพจน์และการพิสูจน์ยาก
∀x (¬A(x) ∨ ¬B(x))∃x (¬A(x) ∧ ¬B(x))∀x (¬A(x) ∧ ¬B(x))∃x (¬A(x) ∨ ¬B(x))

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

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

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

F(A, B, C) = Σm(1, 2, 4, 6, 7)
N =
6.ตรรกะดิจิทัล: เกต แผนที่คาร์โนห์ และฟลิปฟล็อปยาก
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKSHIFT

ชิฟต์รีจิสเตอร์ 4 บิต Q₃Q₂Q₁Q₀ เก็บค่า 1010 ทุกขอบสัญญาณนาฬิกา บิตเลื่อนไปทางขวาหนึ่งตำแหน่ง (Q₃ → Q₂ → Q₁ → Q₀, Q₀ หายไป) และอินพุตอนุกรมเข้าสู่ Q₃ อินพุตอนุกรมเป็น 0, 1, 1, 0, 1, 0, 0 ที่ขอบ 7 จงหาสถานะสุดท้าย Q = Q₃Q₂Q₁Q₀ เป็นเลขฐานสิบ

Q₃Q₂Q₁Q₀ = 10100, 1, 1, 0, 1, 0, 0
Q =
7.ทฤษฎีจำนวนและเลขคณิตมอดูลาร์ปานกลาง

จงหาจำนวนเต็มบวกที่น้อยที่สุด x ที่ x ≡ 4 (mod 6) และ x ≡ 0 (mod 13)

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

66x ≡ 18 (mod 76) มีกี่คำตอบ N ใน {0, 1, …, 75}

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

เวลาทำงานของ LSD radix sort กับจำนวนเต็ม n ตัวที่มี d หลักในฐาน k คือเท่าใด

  1. AO(dn log k)
  2. BO(n²)
  3. CO(d(n + k))
  4. DO(n log n)
10.อัลกอริทึมและความซับซ้อนยาก

ความซับซ้อนเชิงเวลาของ for i = 1 to n: for (j = i; j ≤ n; j = j + i) ทำงาน O(1) คือเท่าใด

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

เหตุใดการท่องอาร์เรย์จึงเร็วกว่าการท่องลิงก์ลิสต์ที่ยาวเท่ากันมากในทางปฏิบัติ

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

ในอัลกอริทึมต้นไม้ทอดข้ามที่น้อยที่สุดของ Kruskal โครงสร้าง union-find ใช้เพื่อ

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

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

4 × deg 42 × deg 2
L =
14.ทฤษฎีกราฟยาก
819142071817213ABCDEF

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

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

คุณสมบัติ ACID ใดหมายความว่าทรานแซกชันที่ทำพร้อมกันไม่เห็นการเปลี่ยนแปลงที่ยังไม่เสร็จของกันและกัน?

  1. AAvailability
  2. BDurability
  3. CIsolation
  4. DAtomicity
16.ฐานข้อมูลและ SQLยาก

สองทรานแซกชันอ่าน stock = 10 ทั้งคู่ ต่างลบ 1 แล้วเขียนผล ได้ 9 แทนที่จะเป็น 8 นี่คือความผิดปกติใด?

  1. Aphantom read
  2. Blost update
  3. Cdirty read
  4. Ddeletion anomaly
17.เครือข่ายคอมพิวเตอร์ปานกลาง

จุดประสงค์หลักของ VLAN คืออะไร?

  1. Aแบ่งเครือข่ายสวิตช์ทางกายภาพหนึ่งเครือข่ายเป็นบรอดแคสต์โดเมนแยกกัน
  2. Bเพิ่มความเร็วของทุกพอร์ตสวิตช์
  3. Cให้ที่อยู่ IP สาธารณะแก่ทุกอุปกรณ์
  4. Dเพื่อเข้ารหัสทราฟฟิกทั้งหมดระหว่างสวิตช์ เพื่อไม่ให้แผนกอื่นอ่านได้
18.เครือข่ายคอมพิวเตอร์ยาก

เครือข่ายส่งมอบเนื้อหา (CDN) ปรับปรุงประสิทธิภาพเว็บเป็นหลักอย่างไร?

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

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

192.168.124.0/24/28ซับเน็ต 7 (ซับเน็ต 1 เริ่มที่ .0)
x =
20.การแบ่งซับเน็ต IPv4ยาก
ออกเท็ตที่สาม 173 … 175112806413201618140211ร่วมกันเปลี่ยนแปลง

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

10.5.173.0/24 … 10.5.175.0/24
p =

3สารละลาย

1.ระบบเลข

คำตอบ: U = 201

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

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

55 = 0011 0111
ที่กลับบิตแล้ว: 1100 1000
+1 → 1100 1001

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

1100 1001₂ = 256 − 55 = 201

คำตอบ

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

คำตอบ: b = 13 bit

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

กำลังของสอง

212 = 4096 < 4619
213 = 8192 ≥ 4619

คำตอบ

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

คำตอบ: r ∧ ¬(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 = r, b = q ∨ p

นิเสธของนัย

¬(a → b) ≡ a ∧ ¬b = r ∧ ¬(q ∨ p)

คำตอบ

r ∧ ¬(q ∨ p)

ถ้าข้อสมมติทำให้เกิดข้อขัดแย้ง นัยนั้นต้องเป็นจริง

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

คำตอบ: ∃x (¬A(x) ∧ ¬B(x))

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

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

¬∀x (A(x) ∨ B(x)) ≡ ∃x (¬A(x) ∧ ¬B(x))

คำตอบ

∃x (¬A(x) ∧ ¬B(x))

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

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

คำตอบ: N = 4

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

ABC00011110010011031214051716

จัดกลุ่ม 1

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

BC′
AC′
AB
A′B′C

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

F = BC′ + AC′ + AB + A′B′C
N = 4

คำตอบ

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

คำตอบ: Q = 2

ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา D คัดลอกอินพุต (Q⁺ = D); T สลับค่าเมื่อ T = 1; JK คงค่าสำหรับ 00 รีเซ็ตสำหรับ 01 เซตสำหรับ 10 และสลับค่าสำหรับ 11 ตัวนับฐานสอง n บิตมี 2ⁿ สถานะและนับมอดูโล 2ⁿ ตัวนับมอด N นับ 0, 1, …, N − 1 แล้ววนกลับเป็น 0 และต้องใช้ฟลิปฟล็อปจำนวน n ที่น้อยที่สุดที่ 2ⁿ ≥ N แต่ละภาคของตัวนับริปเปิลลดความถี่ลงครึ่งหนึ่ง ดังนั้นเอาต์พุตสุดท้ายของตัวนับมอด N ทำงานที่ fclk/N ตัวนับจอห์นสันที่มีฟลิปฟล็อป n ตัวมี 2n สถานะ ตัวนับริงมี n

สถานะหลังทุกขอบ

1010 → 0101 → 1010 → 1101 → 0110 → 1011 → 0101 → 0010

ค่าฐานสิบ

0010₂ = 2

คำตอบ

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

คำตอบ: x = 52

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

ความสอดคล้องข้อแรก

x = 4 + 6k

ความสอดคล้องข้อที่สอง

4 + 6k ≡ 0 (mod 13) → 6k ≡ 9 (mod 13)
k ≡ 11·9 ≡ 8 (mod 13)

ผลลัพธ์

x = 4 + 6·8 = 52
x = 52
ตรวจสอบ: 52 mod 6 = 4, 52 mod 13 = 0

คำตอบ

x = 52
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(66, 76) = 2
33x ≡ 9 (mod 38)

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

33−1 ≡ 15 (mod 38) → x ≡ 21 (mod 38)

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

x ∈ {21, 59}
N = 2

คำตอบ

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

คำตอบ: C · O(d(n + k))

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

แต่ละรอบจาก d รอบเป็น counting sort ที่ใช้ O(n + k) ดังนั้นเมื่อ d และ k คงที่ ผลรวมจึงเป็นเชิงเส้นตาม n

คำตอบ

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

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

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

ผลรวมคือ n / 1 + n / 2 + ... + n / n = n × Hn และจำนวนฮาร์มอนิก Hn เป็น Θ(log n)

คำตอบ

A · O(n log n)
11.โครงสร้างข้อมูล

คำตอบ: D · สมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี

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

หน่วยความจำต่อเนื่องให้ locality of reference ที่ดี ขณะที่โหนดที่เชื่อมกันอาจกระจัดกระจายและทำให้เกิด cache miss มาก

คำตอบ

D · สมาชิกของอาร์เรย์ต่อเนื่องกัน จึงใช้แคชของ CPU ได้ดี
12.โครงสร้างข้อมูล

คำตอบ: C · ตรวจว่าปลายทั้งสองของเส้นเชื่อมเชื่อมต่อกันอยู่แล้วหรือไม่

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

Find บอกว่าปลายทั้งสองอยู่ในส่วนประกอบเดียวกันหรือไม่ ถ้าไม่ ก็เพิ่มเส้นเชื่อมและ union รวมส่วนประกอบ

คำตอบ

C · ตรวจว่าปลายทั้งสองของเส้นเชื่อมเชื่อมต่อกันอยู่แล้วหรือไม่
13.ทฤษฎีกราฟ

คำตอบ: L = 10

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

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

L + 20 = 2(L + 6) − 2
L = 10

คำตอบ

L = 10

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

14.ทฤษฎีกราฟ

คำตอบ: W = 47

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

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

EF (2): เลือก
CE (7): เลือก
AB (8): เลือก
BE (13): เลือก
BC (14): ข้าม ทำให้เกิดวัฏจักร
DF (17): เลือก

น้ำหนักรวม

W = 2 + 7 + 8 + 13 + 17 = 47

คำตอบ

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

คำตอบ: C · Isolation

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

Isolation แยกทรานแซกชันที่ทำพร้อมกันออกจากกัน ระดับการแยกกำหนดว่าบังคับเข้มงวดเพียงใด

คำตอบ

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

คำตอบ: B · lost update

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

ใน lost update ทั้งสองทรานแซกชันทำงานจากค่าเก่าเดียวกัน และการเขียนครั้งที่สองลบครั้งแรก การล็อก (SELECT ... FOR UPDATE) หรือการอัปเดตแบบอะตอมมิกป้องกันได้

คำตอบ

B · lost update
17.เครือข่ายคอมพิวเตอร์

คำตอบ: A · แบ่งเครือข่ายสวิตช์ทางกายภาพหนึ่งเครือข่ายเป็นบรอดแคสต์โดเมนแยกกัน

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

VLAN จัดกลุ่มพอร์ตในเชิงตรรกะ บรอดแคสต์จึงอยู่ภายในแต่ละ VLAN ช่วยปรับปรุงความปลอดภัยและจำกัดทราฟฟิกบรอดแคสต์

คำตอบ

A · แบ่งเครือข่ายสวิตช์ทางกายภาพหนึ่งเครือข่ายเป็นบรอดแคสต์โดเมนแยกกัน
18.เครือข่ายคอมพิวเตอร์

คำตอบ: B · ให้บริการเนื้อหาที่แคชไว้จากเซิร์ฟเวอร์ที่อยู่ใกล้ผู้ใช้

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

CDN วางสำเนาเนื้อหาไว้ที่ตำแหน่งขอบ (edge) จำนวนมากและนำผู้ใช้ มักผ่าน DNS ไปยังเซิร์ฟเวอร์ใกล้เคียง ลดเวลาแฝงและภาระของเซิร์ฟเวอร์ต้นทาง

คำตอบ

B · ให้บริการเนื้อหาที่แคชไว้จากเซิร์ฟเวอร์ที่อยู่ใกล้ผู้ใช้
19.การแบ่งซับเน็ต IPv4

คำตอบ: x = 111

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

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

เครือข่าย: (7 − 1)·16 = 96
บรอดคาสต์: 96 + 16 − 1 = 111

คำตอบ

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

คำตอบ: p = 22

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

เทียบบิต

173 = 10101101
175 = 10101111
บิตนำหน้าที่ตรงกัน: 6

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

p = 16 + 6 = 22

คำตอบ

p = /22

เส้นทางสรุป: 10.5.172.0/22 (ครอบคลุมเครือข่าย 1 เครือข่ายที่ไม่อยู่ในรายการด้วย)

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