ระบบเลข
- ค่าประจำตำแหน่ง
- ฐานสอง 2k, ฐานแปด 8k, ฐานสิบหก 16k
- เป็นเลขฐานสิบ
- Σ dk·bk
- จากเลขฐานสิบ
- หารด้วยฐาน อ่านเศษจากล่างขึ้นบน
- ฐานสิบหก ↔ ฐานสอง
- เลขฐานสิบหกหนึ่งหลัก = 4 บิต
- two’s complement
- กลับบิตแล้วบวก 1
สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 20 ข้อ พร้อมเฉลยละเอียดไว้ท้ายเล่ม
ตั้งบิตให้เก็บ −42 ใน two's complement 8 บิต อ่านเป็นจำนวนไม่มีเครื่องหมาย ค่าของรูปแบบ U เป็นเท่าใด
ตั้งบิตให้เป็นผลลัพธ์ 8 บิตของ 0010 0010 AND 0011 1001 ค่าของผลลัพธ์ R เป็นเท่าใดในเลขฐานสิบ
สูตรใดสมมูลเชิงตรรกะกับ c → a ให้คลิกสูตรนั้น
ตารางค่าความจริง 16 แถวมีกี่แถวที่ทำให้ ¬(¬(¬s → (p ∧ q)) ↔ ((p ∨ r) ∨ (q ↔ s))) เป็นจริง เรียกจำนวนนี้ว่า N
จงทำ F = AB′C + ABC + ABC′ + AB′C′ ให้เป็นรูปผลบวกของผลคูณที่น้อยที่สุด นิพจน์ที่ทำให้ง่ายแล้วมีกี่ลิเทอรัล L
สำหรับ F(A, B, C, D) = Σm(3, 4, 6, 8, 14) + d(1, 13) โดย d แทนเงื่อนไขไม่สนใจ จงหาจำนวน N ของไพรม์อิมพลิแคนต์จำเป็น
จงหาตัวผกผันของ 32 มอดูโล 67: จำนวน x ที่ 0 < x < 67 และ 32·x ≡ 1 (mod 67)
73 เป็นจำนวนเฉพาะ ใช้ทฤษฎีบทเล็กของแฟร์มาเพื่อหา 2813108 mod 73
ในอาร์เรย์ที่เรียงแล้ว คุณหาสองสมาชิกที่ผลรวมเท่ากับเป้าหมายโดยเลื่อนตัวชี้จากแต่ละปลายเข้าหากัน ความซับซ้อนเชิงเวลาคือเท่าใด
เหตุใดการค้นหาเฉลี่ยในตารางแฮชจึงเป็น O(1) แต่กรณีเลวร้ายที่สุดเป็น O(n)
ความสูงในกรณีเลวร้ายที่สุดของ binary search tree ที่มี n โหนดคือเท่าใด ถ้าแทรกคีย์ตามลำดับที่เรียงแล้ว
ความซับซ้อนเชิงเวลาของ decrease-key ในฮีปทวิภาค (เมื่อทราบตำแหน่งของสมาชิก) คือ
ต้นไม้มี 2 จุดยอดดีกรี 5 และจุดยอดอื่นทั้งหมดเป็นใบ (ดีกรี 1) มีกี่ใบ L
มีวอล์กความยาว 2 จาก E ไป C กี่วอล์ก วอล์กอาจซ้ำจุดยอดและเส้นเชื่อมได้ เรียกจำนวนนี้ว่า N
รูปแบบบรรทัดฐานที่สาม (3NF) ขจัด:
แอปรัน UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 และรายงานความขัดแย้งหากไม่มีแถวถูกอัปเดต นี่คือเทคนิคใด?
พรีฟิกซ์เดียวใดสรุปรวมทั้ง 192.168.0.0/24 และ 192.168.1.0/24 ได้?
ปัญหานับถึงอนันต์ (count-to-infinity) เกิดในโพรโทคอลเลือกเส้นทางชนิดใด และอะไรช่วยแก้ไข?
แผนกหนึ่งต้องการที่อยู่โฮสต์ 1062 ที่อยู่ในซับเน็ตเดียว ความยาวพรีฟิกซ์ที่ยาวที่สุด p (ซับเน็ตเล็กที่สุด) ที่ใหญ่พอคือเท่าใด
โฮสต์มีที่อยู่ 172.20.25.247/17 ออกเท็ตที่สาม x ของที่อยู่บรอดแคสต์ของซับเน็ตมันคือเท่าใด
คำตอบ: U = 214
การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน
คำตอบ: R = 32
การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน
AND ให้ 1 เฉพาะที่ทั้งสองบิตเป็น 1
คำตอบ: ¬c ∨ a
ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (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)
คอลัมน์หลังเส้นคั่นคือตัวเลือกตามลำดับที่แสดง
คำตอบ: N = 10
ตารางค่าความจริง: สูตรที่มีตัวแปรต่างกัน n ตัวมี 2ⁿ แถว หนึ่งแถวต่อทุกชุดของค่าความจริง (1 = จริง, 0 = เท็จ) ทำจากด้านในออกมาและให้ทุกประพจน์ย่อยมีคอลัมน์ของตัวเอง ¬a กลับค่า a ∧ b เป็น 1 เฉพาะเมื่อทั้งสองเป็น 1 a ∨ b เป็น 0 เฉพาะเมื่อทั้งสองเป็น 0 a → b เป็น 0 เฉพาะเมื่อ a = 1 และ b = 0 a ↔ b เป็น 1 เมื่อทั้งสองข้างเท่ากัน
คำตอบ: L = 1
พีชคณิตแบบบูล: กฎที่ทำให้นิพจน์ง่ายขึ้นได้แก่ 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 หนึ่งครั้ง
คำตอบ: N = 4
แผนที่คาร์โนห์: เซลล์เรียงตามรหัสเกรย์ (00, 01, 11, 10) ดังนั้นเซลล์ที่อยู่ติดกัน รวมถึงเซลล์ที่อยู่ตรงข้ามขอบ ต่างกันเพียงตัวแปรเดียว จัดกลุ่ม 1 เป็นสี่เหลี่ยมที่มี 1, 2, 4, 8 หรือ 16 เซลล์ ให้ใหญ่ที่สุดและมีจำนวนกลุ่มน้อยที่สุดจนครอบคลุมทุก 1 แต่ละกลุ่มคือหนึ่งพจน์ผลคูณ: ตัวแปรที่คงที่ภายในกลุ่ม กลุ่มที่มี 2ᵏ เซลล์สูญเสียตัวแปรไป k ตัว ค่าไม่สนใจ (X) ใช้เพื่อทำให้กลุ่มใหญ่ขึ้นได้ แต่ไม่จำเป็นต้องถูกครอบคลุม การจัดกลุ่ม 0 แทนจะได้รูป POS ที่น้อยที่สุด
กลุ่มที่ใหญ่ที่สุดที่สร้างได้จาก 1 และ X
คำตอบ: 32−1 mod 67 = 44
ตัวผกผันและความสอดคล้อง: 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·32 (mod 67)
คำตอบ: 2813108 mod 73 = 69
เลขยกกำลังมอดูลาร์และ 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
คำตอบ: B · O(n)
ถ้าผลรวมน้อยเกินไปตัวชี้ซ้ายเลื่อนไปขวา ถ้ามากเกินไปตัวชี้ขวาเลื่อนไปซ้าย จึงมีไม่เกิน n ขั้น
คำตอบ: D · คีย์จำนวนมากอาจชนกันไปอยู่ในถังเดียวกัน
เมื่อมีฟังก์ชันแฮชที่ดีและตัวประกอบการโหลดเหมาะสม ถังจะสั้นโดยเฉลี่ย แต่การโจมตีหรือแฮชที่แย่อาจทำให้ทุกคีย์ไปอยู่ในถังเดียว
คำตอบ: D · n (กลายเป็นลิงก์ลิสต์)
การแทรกตามลำดับสร้างต้นไม้เสื่อมที่มีความสูง n ทำให้การค้นหาเป็น O(n) ต้นไม้สมดุลป้องกันเรื่องนี้
คำตอบ: D · O(log n)
หลังลดคีย์ สมาชิกเลื่อนขึ้นไม่เกินความสูงของฮีป ฮีปฟีโบนักชีทำ decrease-key แบบกระจายต้นทุนได้ใน O(1)
คำตอบ: L = 8
ออยเลอร์ แฮมิลตัน และต้นไม้: กราฟเชื่อมโยงมีวงจรออยเลอร์ (ผ่านทุกเส้นเชื่อมครั้งเดียวและกลับจุดเริ่มต้น) เมื่อทุกจุดยอดมีดีกรีคู่ และมีทางเดินออยเลอร์ที่ไม่ใช่วงจรเมื่อมีจุดยอดดีกรีคี่พอดีสองจุด ทางเดินนั้นไปจากจุดยอดคี่จุดหนึ่งถึงอีกจุดหนึ่ง วงจรแฮมิลตันผ่านทุกจุดยอดครั้งเดียว Kn มีวงจรแบบนี้ (n − 1)!/2 วงจร ต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม และกราฟเชื่อมโยงที่มี m เส้นเชื่อมจะเหลือต้นไม้ทอดข้ามหลังเอาเส้นเชื่อมออก m − n + 1 เส้น
ทางลัด: L = 2 + Σ (d − 2) ของจุดยอดที่มีดีกรี d ≥ 3
คำตอบ: N = 1
ดีกรี: ดีกรีของจุดยอดคือจำนวนเส้นเชื่อมที่มาบรรจบที่จุดนั้น เส้นเชื่อมแต่ละเส้นมีสองปลาย ดังนั้นผลบวกของดีกรีเท่ากับสองเท่าของจำนวนเส้นเชื่อม: Σ deg(v) = 2|E| (เล็มมาการจับมือ) ดังนั้นจำนวนจุดยอดที่มีดีกรีคี่เป็นจำนวนคู่ Kn มีเส้นเชื่อม n(n − 1)/2 เส้น กราฟปรกติดีกรี k ที่มี n จุดยอดมี nk/2 เส้น และต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม
คำตอบ: A · การพึ่งพาแบบถ่ายทอดระหว่างแอตทริบิวต์ที่ไม่ใช่คีย์
ใน 3NF ไม่มีแอตทริบิวต์ที่ไม่ใช่คีย์ใดขึ้นกับแอตทริบิวต์ที่ไม่ใช่คีย์อื่น เช่น การเก็บ city และ postcode โดย city ขึ้นกับ postcode
คำตอบ: D · การควบคุมภาวะพร้อมกันแบบมองโลกในแง่ดี (optimistic concurrency control)
optimistic locking สันนิษฐานว่าความขัดแย้งเกิดน้อย: ตรวจคอลัมน์ version ตอนเขียน และล้มเหลวหากทรานแซกชันอื่นเปลี่ยนแถวไปแล้ว
คำตอบ: C · 192.168.0.0/23
0 และ 1 ใช้บิตเหมือนกันทั้งหมดในอ็อกเต็ตที่สามยกเว้นบิตสุดท้าย พรีฟิกซ์ที่สั้นลงหนึ่งบิต (/23) เริ่มที่ 192.168.0.0 จึงครอบคลุมทั้งสองพอดี
คำตอบ: B · แบบเวกเตอร์ระยะทาง; split horizon และ poison reverse
หลังเกิดความล้มเหลว เราเตอร์แบบเวกเตอร์ระยะทางอาจประกาศเส้นทางที่ล้าสมัยให้กันและกันต่อไป ทำให้เมตริกเพิ่มขึ้นช้า ๆ split horizon, poison reverse และเมตริกสูงสุดช่วยจำกัดปัญหานี้
คำตอบ: p = 21
การแบ่งซับเน็ต IPv4: ที่อยู่มี 32 บิต พรีฟิกซ์ /p บอกว่าบิตนำหน้ากี่บิตระบุเครือข่าย ส่วน 32 − p บิตที่เหลือใช้ระบุเลขโฮสต์ ซับเน็ตมี 2³²⁻ᵖ ที่อยู่ แต่ที่อยู่แรก (ที่อยู่เครือข่าย) และที่อยู่สุดท้าย (ที่อยู่บรอดคาสต์) ใช้เป็นโฮสต์ไม่ได้ จึงมีโฮสต์ได้ 2³²⁻ᵖ − 2 เครื่อง ข้อยกเว้น: /31 (ลิงก์แบบจุดต่อจุด, RFC 3021) ใช้ทั้ง 2 แอดเดรสสำหรับโฮสต์ และ /32 เป็นแอดเดรสเดียว (โฮสต์เดียวหรือลูปแบ็ก)
คำตอบ: x = 127
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).
ExamProblems · examproblems.com/courses/computer-science-fundamentals