ระบบเลข
- ค่าประจำตำแหน่ง
- ฐานสอง 2k, ฐานแปด 8k, ฐานสิบหก 16k
- เป็นเลขฐานสิบ
- Σ dk·bk
- จากเลขฐานสิบ
- หารด้วยฐาน อ่านเศษจากล่างขึ้นบน
- ฐานสิบหก ↔ ฐานสอง
- เลขฐานสิบหกหนึ่งหลัก = 4 บิต
- two’s complement
- กลับบิตแล้วบวก 1
สรุปสูตร ขั้นตอนวิธีทำที่สำคัญของทุกหัวข้อ และโจทย์ฝึก 20 ข้อ พร้อมเฉลยละเอียดไว้ท้ายเล่ม
ตั้งบิตให้เก็บ −37 ใน two's complement 8 บิต อ่านเป็นจำนวนไม่มีเครื่องหมาย ค่าของรูปแบบ U เป็นเท่าใด
ตั้งบิตให้เป็นผลลัพธ์ 8 บิตของ 0100 0001 >> 3 ค่าของผลลัพธ์ R เป็นเท่าใดในเลขฐานสิบ
สูตรใดสมมูลเชิงตรรกะกับ c → b ให้คลิกสูตรนั้น
ประโยคใดสมมูลกับ ¬∃x (P(x) → Q(x)) เมื่อย้ายนิเสธเข้าด้านในสุด ให้คลิกประโยคนั้น
ใช้แผนที่คาร์โนห์หารูปผลบวกของผลคูณ (SOP) ที่น้อยที่สุดของ F(A, B, C, D) = Σm(0, 1, 3, 6, 7, 14, 15) มีกี่พจน์ผลคูณ N
ตัวนับจอห์นสัน (ริงบิด) ทำจากฟลิปฟล็อป D 6 ตัว โดยเอาต์พุตสุดท้ายที่กลับค่าป้อนกลับไปยังอินพุตแรก และเริ่มที่ศูนย์ทั้งหมด ผ่านกี่สถานะที่ต่างกัน N
จงหาตัวผกผันของ 12 มอดูโล 19: จำนวน x ที่ 0 < x < 19 และ 12·x ≡ 1 (mod 19)
ใช้การยกกำลังสองซ้ำเพื่อหา 395 mod 37
ความซับซ้อนเชิงเวลาของ for i = 1 to n: (j = 1; while j < n: j = j × 2) คือเท่าใด
จะเกิดอะไรขึ้นถ้ามีผู้พบอัลกอริทึมเวลาพหุนามสำหรับปัญหา NP-complete หนึ่งข้อ
ต้นไม้ AVL และต้นไม้แดง–ดำ (red-black) รับประกัน
การแฮชซ้อน (double hashing) ลดปัญหาใดของ linear probing เป็นหลัก
กราฟเชื่อมโยงนี้มีวงจรออยเลอร์ ทางเดินออยเลอร์ที่ไม่ใช่วงจร หรือไม่มีทั้งสองอย่าง ให้คลิกคำตอบของคุณ
ใช้ขั้นตอนวิธีของไดก์สตราเพื่อหาความยาว d(F) ของเส้นทางที่สั้นที่สุดจาก A ไป F ในกราฟถ่วงน้ำหนัก
ตาราง employees มีคอลัมน์ manager_id ที่อ้างอิงพนักงานอีกคน จะแสดงพนักงานแต่ละคนคู่กับชื่อผู้จัดการได้อย่างไร?
SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales คำนวณอะไร?
เราเตอร์มีเส้นทางสำหรับ 10.0.0.0/8 และ 10.1.0.0/16 ใช้เส้นทางใดสำหรับแพ็กเก็ตไปยัง 10.1.5.5?
การโจมตีแบบวางยาแคช DNS (DNS cache poisoning) มีเป้าหมายเพื่อ:
เครือข่าย 10.27.118.0/24 ถูกแบ่งเป็นซับเน็ตขนาดเท่ากันด้วยพรีฟิกซ์ /28 มีกี่ซับเน็ต N
เราเตอร์มีเส้นทางไปยังเครือข่ายเหล่านี้: 10.77.64.0/24, 10.77.65.0/24, 10.77.66.0/24 ความยาวพรีฟิกซ์ยาวที่สุด p ของเส้นทางสรุปเส้นเดียวที่ครอบคลุมทั้งหมดคือเท่าใด
คำตอบ: U = 219
การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน
คำตอบ: R = 8
การตั้งค่าบิต: แต่ละบิตมีค่าเป็นกำลังของสอง (128, 64, …, 1) เลขฐานสิบหกหนึ่งหลักคือสี่บิตพอดี และใน two's complement 8 บิต บิตซ้ายสุดมีค่า −128 การดำเนินการระดับบิตทำงานกับแต่ละตำแหน่งบิตแยกกัน
การเลื่อนขวา 3 ตำแหน่งย้ายทุกบิตไปทางขวา 3 ตำแหน่ง บิตที่หลุดออกปลายขวาหายไปและศูนย์เข้ามาทางซ้าย
คำตอบ: ¬c ∨ b
ความสมมูลเชิงตรรกะ: สูตรสองสูตรสมมูลกัน (≡) เมื่อมีค่าเท่ากันทุกแถวของตารางค่าความจริง ซ้ำซ้อน (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)
คอลัมน์หลังเส้นคั่นคือตัวเลือกตามลำดับที่แสดง
คำตอบ: ∀x (P(x) ∧ ¬Q(x))
ตัวบ่งปริมาณและการอ้างเหตุผล: ¬∀x P(x) ≡ ∃x ¬P(x) และ ¬∃x P(x) ≡ ∀x ¬P(x) ย้ายนิเสธเข้าด้านใน สลับทุกตัวบ่งปริมาณที่นิเสธผ่าน และใส่นิเสธให้สูตรด้านในด้วยกฎของประพจน์ เช่น ¬(a → b) ≡ a ∧ ¬b การอ้างเหตุผลสมเหตุสมผลเมื่อบทสรุปเป็น 1 ในทุกแถวที่สมมติฐานทั้งหมดเป็น 1 แถวเดียวที่สมมติฐานเป็นจริงแต่บทสรุปเป็นเท็จคือตัวอย่างค้านและแสดงว่าการอ้างเหตุผลนั้นไม่สมเหตุสมผล
ตัวเลือกอื่นอาจคงตัวบ่งปริมาณไว้ไม่เปลี่ยน เปลี่ยนลำดับของตัวบ่งปริมาณ หรือใส่นิเสธให้สูตรด้านในผิด
คำตอบ: N = 3
แผนที่คาร์โนห์: เซลล์เรียงตามรหัสเกรย์ (00, 01, 11, 10) ดังนั้นเซลล์ที่อยู่ติดกัน รวมถึงเซลล์ที่อยู่ตรงข้ามขอบ ต่างกันเพียงตัวแปรเดียว จัดกลุ่ม 1 เป็นสี่เหลี่ยมที่มี 1, 2, 4, 8 หรือ 16 เซลล์ ให้ใหญ่ที่สุดและมีจำนวนกลุ่มน้อยที่สุดจนครอบคลุมทุก 1 แต่ละกลุ่มคือหนึ่งพจน์ผลคูณ: ตัวแปรที่คงที่ภายในกลุ่ม กลุ่มที่มี 2ᵏ เซลล์สูญเสียตัวแปรไป k ตัว ค่าไม่สนใจ (X) ใช้เพื่อทำให้กลุ่มใหญ่ขึ้นได้ แต่ไม่จำเป็นต้องถูกครอบคลุม การจัดกลุ่ม 0 แทนจะได้รูป POS ที่น้อยที่สุด
ทุกกลุ่มเป็นสี่เหลี่ยมของ 2ᵏ เซลล์ เซลล์ที่ขอบเป็นเพื่อนบ้านของเซลล์ที่ขอบตรงข้าม
มีการจัดกลุ่มอีกแบบที่มีขนาดเท่ากัน ซึ่งมีจำนวนพจน์และลิเทอรัลเท่ากัน
คำตอบ: N = 12
ฟลิปฟล็อปและตัวนับ: ฟลิปฟล็อปเปลี่ยนค่าเฉพาะที่ขอบแอ็กทีฟของสัญญาณนาฬิกา 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
คำตอบ: 12−1 mod 19 = 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)
เศษ r แต่ละตัวเขียนเป็น r ≡ t·12 (mod 19)
คำตอบ: 395 mod 37 = 21
เลขยกกำลังมอดูลาร์และ 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
คำตอบ: D · O(n log n)
ลูปชั้นในทำงานประมาณ log₂ n ครั้งสำหรับแต่ละรอบของลูปชั้นนอก n รอบ ได้ O(n log n)
คำตอบ: B · ทุกปัญหาใน NP แก้ได้ในเวลาพหุนาม ดังนั้น P = NP
เนื่องจากทั้ง NP ลดรูปมาเป็นปัญหา NP-complete ใด ๆ ได้ในเวลาพหุนาม อัลกอริทึมเร็วสำหรับข้อหนึ่งจึงให้อัลกอริทึมเร็วสำหรับทั้งหมด
คำตอบ: C · ความสูง O(log n) ผ่านการปรับสมดุลใหม่
ต้นไม้ปรับสมดุลตัวเองรักษาความสูงเป็นลอการิทึม การค้นหา แทรก และลบจึงเป็น O(log n) ในกรณีเลวร้ายที่สุด
คำตอบ: D · การจับกลุ่มปฐมภูมิ (primary clustering) ซึ่งช่องที่ถูกใช้ต่อกันเป็นสายยาว
Linear probing ก้าวทีละ 1 สายที่ถูกใช้จึงโตและรวมกัน ส่วน double hashing ใช้แฮชที่สองกำหนดขนาดก้าว คีย์ต่างกันจึงตรวจลำดับต่างกัน
คำตอบ: ทางเดินออยเลอร์ ไม่มีวงจร
ออยเลอร์ แฮมิลตัน และต้นไม้: กราฟเชื่อมโยงมีวงจรออยเลอร์ (ผ่านทุกเส้นเชื่อมครั้งเดียวและกลับจุดเริ่มต้น) เมื่อทุกจุดยอดมีดีกรีคู่ และมีทางเดินออยเลอร์ที่ไม่ใช่วงจรเมื่อมีจุดยอดดีกรีคี่พอดีสองจุด ทางเดินนั้นไปจากจุดยอดคี่จุดหนึ่งถึงอีกจุดหนึ่ง วงจรแฮมิลตันผ่านทุกจุดยอดครั้งเดียว Kn มีวงจรแบบนี้ (n − 1)!/2 วงจร ต้นไม้ที่มี n จุดยอดมี n − 1 เส้นเชื่อม และกราฟเชื่อมโยงที่มี m เส้นเชื่อมจะเหลือต้นไม้ทอดข้ามหลังเอาเส้นเชื่อมออก m − n + 1 เส้น
ทางเดินออยเลอร์เริ่มที่จุดยอดคี่จุดหนึ่งและจบที่อีกจุดหนึ่ง
คำตอบ: d(F) = 19
เส้นทางที่สั้นที่สุดและต้นไม้ทอดข้าม: ขั้นตอนวิธีของไดก์สตรายืนยันหนึ่งจุดยอดต่อรอบ: จุดยอดที่ยังไม่ยืนยันซึ่งมีระยะทางชั่วคราวน้อยที่สุด ระยะทางของมันเป็นค่าสุดท้ายแล้ว และเพื่อนบ้าน v ทุกจุดได้ d(v) = min(d(v), d(u) + w(u, v)) ขั้นตอนวิธีของครัสคัลสร้างต้นไม้ทอดข้ามค่าน้อยที่สุดโดยเลือกเส้นเชื่อมจากเบาไปหนักและข้ามเส้นที่ทำให้เกิดวัฏจักร ขั้นตอนวิธีของพริมขยายต้นไม้หนึ่งต้นจากจุดยอดเริ่มต้นโดยเพิ่มเส้นเชื่อมที่เบาที่สุดที่ออกจากต้นไม้เสมอ ต้นไม้ทอดข้ามที่มี n จุดยอดมี n − 1 เส้นเชื่อม
แต่ละบรรทัด: จุดยอดที่ยืนยัน ระยะทางสุดท้ายของมัน และเพื่อนบ้านที่ระยะทางดีขึ้น
คำตอบ: C · เชื่อมตาราง employees กับตัวเองโดยใช้ชื่อแฝงสองชื่อ
self-join เช่น FROM employees e JOIN employees m ON e.manager_id = m.id ทำให้ชื่อแฝงหนึ่งเป็นพนักงานและอีกชื่อเป็นผู้จัดการ
คำตอบ: A · ยอดรวมสะสมของ amount เรียงตาม day
เมื่อมี ORDER BY และไม่ระบุเฟรมชัดเจน หน้าต่างครอบคลุมตั้งแต่แถวแรกถึงแถวปัจจุบัน (และแถวที่เท่ากัน) ทำให้ได้ผลรวมสะสม
คำตอบ: A · 10.1.0.0/16 เพราะเป็นพรีฟิกซ์ที่ตรงกันยาวที่สุด
การส่งต่อ IP ใช้การจับคู่พรีฟิกซ์ยาวที่สุด (longest prefix match): ในบรรดาเส้นทางที่ตรงกับปลายทาง จะเลือกเส้นทางที่มีมาสก์ยาวที่สุด
คำตอบ: A · ทำให้รีโซลเวอร์เก็บที่อยู่ IP ปลอมสำหรับโดเมนหนึ่ง
การวางยาแทรกเรกคอร์ดปลอมลงในแคชของรีโซลเวอร์ DNSSEC เพิ่มลายเซ็นเพื่อให้รีโซลเวอร์ตรวจสอบเรกคอร์ดได้
คำตอบ: N = 16
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).
แต่ละซับเน็ต /28 มีโฮสต์ที่ใช้ได้ 24 − 2 = 14 โฮสต์
คำตอบ: p = 22
การสรุปเส้นทาง: เส้นทางสรุป a.b.c.0/p ครอบคลุมทุกเครือข่ายที่ p บิตแรกตรงกัน เขียนออกเท็ตที่ต่างกันของเครือข่ายแรกและสุดท้ายเป็นเลขฐานสอง จำนวนบิตนำหน้าที่ตรงกัน บวกบิตของออกเท็ตก่อนหน้า คือพรีฟิกซ์สรุปที่ยาวที่สุด
เส้นทางสรุป: 10.77.64.0/22 (ครอบคลุมเครือข่าย 1 เครือข่ายที่ไม่อยู่ในรายการด้วย)
ExamProblems · examproblems.com/courses/computer-science-fundamentals