Asas Sains Komputer: pek ulang kaji kilat

Lembaran formula, langkah kaedah utama untuk setiap topik dan 20 soalan latihan, dengan penyelesaian penuh di bahagian belakang.

Soalan baharuKembali ke kursus

Dalam tetingkap cetak, pilih “Simpan sebagai PDF” untuk menyimpan salinan pada peranti anda.

1Formula dan kaedah

Sistem nombor

Nilai kedudukan
perduaan 2k, oktal 8k, heks 16k
Kepada perpuluhan
Σ dk·bk
Daripada perpuluhan
bahagi dengan asas, baca baki dari bawah ke atas
Heks ↔ perduaan
satu digit heks = 4 bit
Pelengkap dua
songsangkan bit dan tambah 1

Logik proposisi & pembuktian

Baris jadual kebenaran
2ⁿ
Implikasi
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Implikasi dinafikan
¬(p → q) ≡ p ∧ ¬q
Dwisyarat
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Hukum agihan
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Pengkuantiti dinafikan
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Kaedah

  1. Kira bilangan pemboleh ubah yang berbeza: jadual kebenaran mempunyai 2ⁿ baris, bermula dengan kesemuanya 1.
  2. Beri setiap subformula lajurnya sendiri dan isi lajur-lajur itu dari dalam ke luar.
  3. Gunakan peraturan setiap penghubung: → hanya 0 bagi 1 → 0, ↔ ialah 1 apabila kedua-dua belah sepadan.
  4. Untuk kesetaraan, bandingkan lajur akhir baris demi baris; untuk hujah, lihat hanya baris yang setiap premisnya 1.
  5. Untuk menafikan pernyataan berpengkuantiti, alihkan ¬ ke dalam, tukar ∀ dan ∃, dan nafikan formula di dalamnya.

Logik digital: get, peta K & flip-flop

Get asas
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Peraturan Boolean
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Susunan peta Karnaugh
00, 01, 11, 10 (Gray code)
Kumpulan 2ᵏ sel
kehilangan k pemboleh ubah
Multipleks 4-ke-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Flip-flop
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Pembilang
n-bit: 2ⁿ keadaan; mod-N: n terkecil dengan 2ⁿ ≥ N; fout = fclk/N
Pembilang riak
fmax = 1/(n·tpd)
Pembilang gelang dan Johnson
n dan 2n keadaan

Kaedah

  1. Untuk litar, bekerja dari input ke output satu get pada satu masa dan tulis nilai pada setiap wayar, atau tulis ungkapannya dan isi jadual kebenaran.
  2. Untuk pemudahan, letakkan 1 (dan tidak peduli sebagai X) ke dalam peta Karnaugh dengan baris dan lajur kod Gray: 00, 01, 11, 10.
  3. Liputi 1 dengan kumpulan sesedikit dan sebesar mungkin yang berisi 1, 2, 4, 8 atau 16 sel, menyambung melepasi tepi; setiap kumpulan ialah satu sebutan hasil darab yang terdiri daripada pemboleh ubah yang kekal malar. Kumpulkan 0 untuk bentuk POS.
  4. Untuk flip-flop dan pembilang, baca input pada setiap pinggir jam yang aktif, tulis keadaan selepas setiap pinggir, dan ingat bahawa pembilang n-bit berpusing semula selepas 2ⁿ keadaan.

Teori nombor & aritmetik modulo

Pembahagian dengan baki
a = q·n + r, 0 ≤ r < n
Euclid
gcd(a, b) = gcd(b, a mod b)
Gandaan sepunya terkecil
lcm(a, b) = a·b/gcd(a, b)
Songsangan
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Kongruen linear
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Fungsi totien Euler
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Kaedah

  1. Kurangkan setiap nombor modulo n dahulu; baki terletak antara 0 dengan n − 1.
  2. Untuk gcd, bahagi berulang kali dengan algoritma Euclid; baki bukan sifar yang terakhir ialah gcd.
  3. Untuk songsangan, jalankan algoritma lanjutan dan simpan pekali a; tambah n jika ia negatif.
  4. Selesaikan a·x ≡ b dengan mendarab dengan a⁻¹; gabungkan dua kongruen dengan menulis x = r₁ + m₁k.
  5. Untuk kuasa, tulis eksponen dalam perduaan dan kuasa duakan berulang kali; dalam RSA, d = e⁻¹ mod φ(n) dengan φ(n) = (p − 1)(q − 1).

Teori graf

Lema jabat tangan
Σ deg(v) = 2|E|
Graf lengkap
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Graf sekata
|E| = n·k/2
Pokok dan hutan
|E| = n − 1, |E| = n − c
Daun sesebuah pokok
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
litar: semua darjah genap; laluan: tepat 2 darjah ganjil
Litar Hamilton dalam Kn
(n − 1)!/2
Kemas kini Dijkstra
d(v) = min(d(v), d(u) + w(u, v))
Jalan sepanjang L
(Mᴸ)ij

Kaedah

  1. Tulis darjah setiap bucu; jumlah darjah ialah dua kali bilangan sisi.
  2. Untuk soalan Euler, semak bahawa graf itu bersambung dan kira bucu yang berdarjah ganjil.
  3. Untuk pokok, gunakan n − 1 sisi dan lema jabat tangan.
  4. Untuk Dijkstra, simpan jadual jarak sementara dan tetapkan bucu tidak tetap yang paling kecil dalam setiap pusingan.
  5. Untuk pokok rentang minimum, isih sisi mengikut berat dan langkau setiap sisi yang menutup satu kitaran (Kruskal), atau tumbuhkan satu pokok daripada bucu permulaan (Prim).

Subnet IPv4

Hos bagi setiap subnet
2(32 − prefix) − 2 (/31: 2, /32: 1)
Saiz blok
256 − (mask octet)
Alamat rangkaian
IP AND topeng
Alamat siaran
IP OR (NOT mask): semua bit hos ditetapkan kepada 1
Subnet daripada n bit yang dipinjam
2n

2Soalan latihan

1.Sistem nomborSederhana
nilai kedudukan dalam pelengkap dua1−12806403211608141201

Corak 8-bit 1001 0110 menyimpan integer bertanda dalam pelengkap dua. Apakah nilainya N dalam perpuluhan?

1001 01108 bit
N =
2.Sistem nomborSukar
klik bit untuk menetapkannya012806403201608040201

Tetapkan bit kepada hasil 8-bit bagi 0110 1101 AND 0111 1010. Apakah nilai hasil R dalam perpuluhan?

0110 1101AND0111 1010
R =
3.Logik proposisi & pembuktianSederhana
abc¬a ∨ ¬(b → ¬c)(c → b) → (¬a ∨ ¬(b → ¬c))¬((c → b) → (¬a ∨ ¬(b → ¬c)))111?110?101?100?011?010?001?000?

Dalam berapa daripada 8 baris jadual kebenarannya ¬((c → b) → (¬a ∨ ¬(b → ¬c))) benar? Panggil nombor ini N.

¬((c → b) → (¬a ∨ ¬(b → ¬c)))
N =
4.Logik proposisi & pembuktianSukar

Berapa banyak daripada 16 baris jadual kebenaran menjadikan (b ∧ (a ∧ ¬d)) ↔ (d ∧ (¬c ∨ b)) benar? Panggil nombor ini N.

(b ∧ (a ∧ ¬d)) ↔ (d ∧ (¬c ∨ b))
N =
5.Logik digital: get, peta K & flip-flopSederhana
ABCD000111100001111000111312041507061120130150140809011010

Gunakan peta Karnaugh untuk mencari bentuk hasil darab hasil tambah (POS) minimum bagi F(A, B, C, D) = Σm(1, 2, 3, 5, 12). Berapa banyak sebutan hasil tambah (faktor) N yang ada padanya?

F(A, B, C, D) = Σm(1, 2, 3, 5, 12)
N =
6.Logik digital: get, peta K & flip-flopSukar
ABCD0001111000011110X001031204151716X120130151140819011010

Bagi F(A, B, C, D) = Σm(2, 5, 6, 7, 9, 14) + d(0, 12), dengan d menandakan keadaan tidak peduli, cari bilangan N implikan perdana penting.

F(A, B, C, D) = Σm(2, 5, 6, 7, 9, 14) + d(0, 12)
N =
7.Teori nombor & aritmetik moduloSederhana

Cari songsangan 15 modulo 17: nombor x dengan 0 < x < 17 dan 15·x ≡ 1 (mod 17).

a = 15n = 17
15−1 mod 17 =
8.Teori nombor & aritmetik moduloSukar

Gunakan kuasa dua berulang untuk mencari 4179 mod 47.

a = 41k = 79n = 47
4179 mod 47 =
9.Algoritma & kerumitanSederhana

Batas bawah bagi isihan berasaskan perbandingan dalam kes terburuk ialah:

  1. AΩ(log n)
  2. BΩ(n²)
  3. CΩ(n)
  4. DΩ(n log n)
10.Algoritma & kerumitanSukar

Apakah kerumitan masa membina timbunan binari daripada n elemen tidak tersusun dengan kaedah bawah-atas?

  1. AO(n²)
  2. BO(log n)
  3. CO(n log n)
  4. DO(n)
11.Struktur dataSederhana

Apakah yang berlaku apabila jadual cincang dicincang semula selepas faktor bebannya melebihi ambang?

  1. AKunci sedia ada disusun di tempat
  2. BKunci tertua dipadam untuk memberi ruang
  3. CJadual yang lebih besar diperuntukkan dan setiap kunci disisip semula
  4. DHanya kunci yang berlanggar dipindahkan ke senarai limpahan baharu di hujung jadual
12.Struktur dataSukar

Pokok segmen lazimnya digunakan untuk:

  1. AMenjawab pertanyaan julat (seperti hasil tambah julat) dan kemas kini dalam O(log n)
  2. BMengisih rentetan mengikut abjad dengan menyimpan setiap awalan dalam nod pokok yang berasingan
  3. CMelaksanakan tindanan
  4. DMenyimpan sisi graf
13.Teori grafSederhana
ABCDEFGLitar EulerLaluan Euler, tiada litartiada kedua-duanya

Adakah graf bersambung itu mempunyai litar Euler, laluan Euler yang bukan litar, atau tiada kedua-duanya? Klik jawapan anda.

|V| = 7|E| = 9
  1. 1Litar Euler
  2. 2Laluan Euler, tiada litar
  3. 3tiada kedua-duanya
14.Teori grafSukar
13108491435ABCDEF

Algoritma Kruskal membina pokok rentang minimum. Klik sisi yang ditambahnya sebagai sisi nombor 5; sisi yang dilangkau tidak dikira.

k = 5
  1. 1sisi AB
  2. 2sisi AC
  3. 3sisi BC
  4. 4sisi BD
  5. 5sisi CE
  6. 6sisi DE
  7. 7sisi DF
  8. 8sisi EF
15.Pangkalan data & SQLSederhana

Pertanyaan manakah yang memulangkan bilangan pesanan bagi setiap pelanggan?

  1. ASELECT DISTINCT COUNT(*) FROM orders
  2. BSELECT customer_id FROM orders WHERE COUNT(*) > 0
  3. CSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  4. DSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
16.Pangkalan data & SQLSukar

Jadual employee(emp_id, dept_id, dept_name) mempunyai kunci emp_id, dan dept_id → dept_name. Pernyataan manakah yang betul?

  1. AIa bukan dalam 1NF
  2. BIa dalam 2NF tetapi bukan 3NF
  3. CIa bukan dalam 2NF
  4. DIa dalam BCNF dan oleh itu dalam 3NF
17.Rangkaian komputerSederhana

Apakah ciri serangan nafi perkhidmatan teragih (DDoS)?

  1. APenyerang membaca trafik Wi-Fi yang tidak disulitkan dari sebuah kereta berdekatan
  2. BVirus memadam fail pada satu PC
  3. CSeorang penyerang meneka kata laluan pengguna
  4. DBanyak mesin yang dikompromi membanjiri sasaran dengan trafik
18.Rangkaian komputerSukar

Stesen A dan C kedua-duanya mencapai titik capaian B tetapi tidak dapat mendengar antara satu sama lain, maka bingkai mereka berlanggar di B. Bagaimanakah 802.11 membantu?

  1. ADengan menghalakan bingkai A melalui C
  2. BDengan membuat A dan C menggunakan pengesanan perlanggaran supaya mereka berhenti menghantar apabila bingkai bertindih
  3. CDengan meningkatkan TTL bingkai
  4. DPertukaran RTS/CTS pilihan: CTS daripada AP memberitahu semua stesen berdekatan supaya menunggu
19.Subnet IPv4Sederhana
/24 → /2811111111111111111111111111110000bit rangkaianbit hos

Rangkaian 192.168.10.0/24 mesti dibahagikan kepada sekurang-kurangnya 16 subnet yang sama saiz. Jika anda meminjam bit sesedikit mungkin, berapakah hos boleh guna H bagi setiap subnet?

192.168.10.0/2416 subnets
H =
20.Subnet IPv4Sukar
oktet terakhir = 35012806413201608041211rangkaianhos

Sebuah hos mempunyai alamat 10.20.96.35/27. Apakah oktet keempat x bagi alamat rangkaiannya?

10.20.96.35/27
x =

3Larutan

1.Sistem nombor

Jawapan: N = −106

Sistem nombor kedudukan: setiap digit bernilai nilainya didarab kuasa asas. Dalam perduaan, kedudukan bernilai 1, 2, 4, 8, 16, …; dalam heksadesimal 1, 16, 256, …, dengan A–F mewakili 10–15. Dalam pelengkap dua 8-bit, bit paling kiri bernilai −128 dan bukannya +128, begitulah nombor negatif disimpan.

Tambah nilai kedudukan

Bit lain mengekalkan nilai positif biasanya.

−128 + 16 + 4 + 2 = −106

Jawapan

N = −106
2.Sistem nombor

Jawapan: R = 104

Menetapkan bit: setiap bit bernilai kuasa dua (128, 64, …, 1). Satu digit heks tepat empat bit, dan dalam pelengkap dua 8-bit bit paling kiri bernilai −128. Operasi bitwise bekerja pada setiap kedudukan bit secara berasingan.

Bit demi bit

AND memberikan 1 hanya di mana kedua-dua bit ialah 1.

0110 1101
AND 0111 1010
= 0110 1000

Nilai hasil

0110 1000₂ = 104

Jawapan

R = 104
3.Logik proposisi & pembuktian

Jawapan: N = 2

Jadual kebenaran: formula dengan n pemboleh ubah berbeza mempunyai 2ⁿ baris, satu untuk setiap gabungan nilai kebenaran (1 = benar, 0 = palsu). Bekerja dari dalam ke luar dan beri setiap subformula lajurnya sendiri. ¬a menyongsangkan nilai; a ∧ b ialah 1 hanya apabila kedua-duanya 1; a ∨ b ialah 0 hanya apabila kedua-duanya 0; a → b ialah 0 hanya apabila a = 1 dan b = 0; a ↔ b ialah 1 apabila kedua-dua belah sama.

Jadual kebenaran baris demi baris

a = 1, b = 1, c = 1: c → b = 1, ¬a = 0, ¬c = 0, b → ¬c = 0, ¬(b → ¬c) = 1, ¬a ∨ ¬(b → ¬c) = 1, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0
a = 1, b = 1, c = 0: c → b = 1, ¬a = 0, ¬c = 1, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 0, (c → b) → (¬a ∨ ¬(b → ¬c)) = 0, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 1
a = 1, b = 0, c = 1: c → b = 0, ¬a = 0, ¬c = 0, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 0, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0
a = 1, b = 0, c = 0: c → b = 1, ¬a = 0, ¬c = 1, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 0, (c → b) → (¬a ∨ ¬(b → ¬c)) = 0, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 1
a = 0, b = 1, c = 1: c → b = 1, ¬a = 1, ¬c = 0, b → ¬c = 0, ¬(b → ¬c) = 1, ¬a ∨ ¬(b → ¬c) = 1, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0
a = 0, b = 1, c = 0: c → b = 1, ¬a = 1, ¬c = 1, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 1, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0
a = 0, b = 0, c = 1: c → b = 0, ¬a = 1, ¬c = 0, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 1, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0
a = 0, b = 0, c = 0: c → b = 1, ¬a = 1, ¬c = 1, b → ¬c = 1, ¬(b → ¬c) = 0, ¬a ∨ ¬(b → ¬c) = 1, (c → b) → (¬a ∨ ¬(b → ¬c)) = 1, ¬((c → b) → (¬a ∨ ¬(b → ¬c))) = 0

Kira baris dengan nilai 1

¬((c → b) → (¬a ∨ ¬(b → ¬c))): 0, 1, 0, 1, 0, 0, 0, 0
N = 2

Jawapan

N = 2
4.Logik proposisi & pembuktian

Jawapan: N = 8

Jadual kebenaran: formula dengan n pemboleh ubah berbeza mempunyai 2ⁿ baris, satu untuk setiap gabungan nilai kebenaran (1 = benar, 0 = palsu). Bekerja dari dalam ke luar dan beri setiap subformula lajurnya sendiri. ¬a menyongsangkan nilai; a ∧ b ialah 1 hanya apabila kedua-duanya 1; a ∨ b ialah 0 hanya apabila kedua-duanya 0; a → b ialah 0 hanya apabila a = 1 dan b = 0; a ↔ b ialah 1 apabila kedua-dua belah sama.

Lajur

¬d; a ∧ ¬d; b ∧ (a ∧ ¬d); ¬c; ¬c ∨ b; d ∧ (¬c ∨ b); (b ∧ (a ∧ ¬d)) ↔ (d ∧ (¬c ∨ b))

Pecahkan pada a

a = 1: 3
a = 0: 5
N = 3 + 5 = 8

Jawapan

N = 8
5.Logik digital: get, peta K & flip-flop

Jawapan: N = 4

Peta Karnaugh: sel disusun dalam kod Gray (00, 01, 11, 10), maka sel berjiran, termasuk yang merentasi tepi, berbeza pada tepat satu pemboleh ubah. Kumpulkan 1 dalam segi empat tepat berisi 1, 2, 4, 8 atau 16 sel, sebesar mungkin dan sesedikit mungkin, sehingga setiap 1 diliputi. Setiap kumpulan ialah satu sebutan hasil darab: pemboleh ubah yang kekal malar di dalamnya. Kumpulan 2ᵏ sel kehilangan k pemboleh ubah. Tidak peduli (X) boleh digunakan untuk membesarkan kumpulan tetapi tidak perlu diliputi. Mengumpulkan 0 pula memberi bentuk POS minimum.

ABCD000111100001111000111312041507061120130150140809011010

Kumpulkan 0

Setiap kumpulan ialah segi empat tepat 2ᵏ sel; sel tepi berjiran dengan sel pada tepi bertentangan.

(B′ + C′)
(A′ + D′)
(A + C + D)
(A′ + B)

Bentuk POS minimum

F = (B′ + C′)(A′ + D′)(A + C + D)(A′ + B)
N = 4

Jawapan

N = 4
6.Logik digital: get, peta K & flip-flop

Jawapan: N = 2

Peta Karnaugh: sel disusun dalam kod Gray (00, 01, 11, 10), maka sel berjiran, termasuk yang merentasi tepi, berbeza pada tepat satu pemboleh ubah. Kumpulkan 1 dalam segi empat tepat berisi 1, 2, 4, 8 atau 16 sel, sebesar mungkin dan sesedikit mungkin, sehingga setiap 1 diliputi. Setiap kumpulan ialah satu sebutan hasil darab: pemboleh ubah yang kekal malar di dalamnya. Kumpulan 2ᵏ sel kehilangan k pemboleh ubah. Tidak peduli (X) boleh digunakan untuk membesarkan kumpulan tetapi tidak perlu diliputi. Mengumpulkan 0 pula memberi bentuk POS minimum.

Implikan perdana

Kumpulan terbesar yang boleh dibentuk daripada 1 dan X.

BCD′, A′CD′, A′B′D′, A′BD, ABD′, A′BC, AB′C′D
ABCD0001111000011110X001031204151716X120130151140819011010

Implikan perdana penting

A′BD, AB′C′D
N = 2

Jawapan

N = 2
7.Teori nombor & aritmetik modulo

Jawapan: 15−1 mod 17 = 8

Songsangan dan kongruen: a mempunyai songsangan modulo n tepat apabila gcd(a, n) = 1. Algoritma Euclid lanjutan menulis 1 = s·n + t·a, dan kemudian a⁻¹ ≡ t (mod n). Kongruen a·x ≡ b (mod n) dengan gcd(a, n) = 1 mempunyai penyelesaian x ≡ a⁻¹·b. Dua kongruen x ≡ r₁ (mod m₁) dan x ≡ r₂ (mod m₂) dengan modulus perdana relatif mempunyai satu penyelesaian modulo m₁·m₂ (teorem baki Cina). φ(n) Euler mengira nombor dari 1 hingga n yang perdana relatif dengan n: φ(n) = n·∏(1 − 1/p).

Algoritma Euclid lanjutan

Setiap baki r ditulis sebagai r ≡ t·15 (mod 17).

r = 17, t = 0
r = 15, q = 1, t = 1
r = 2, q = 7, t = −1
r = 1, q = 2, t = 8

Songsangan

1 ≡ 8·15 (mod 17)
x = 8
semakan: 15·8 = 120 = 7·17 + 1

Jawapan

15−1 mod 17 = 8
8.Teori nombor & aritmetik modulo

Jawapan: 4179 mod 47 = 29

Kuasa modular dan RSA: hitung aᵏ mod n dengan kuasa dua berulang: tulis k dalam perduaan, kuasa duakan, kurangkan selepas setiap langkah dan darabkan kuasa yang bitnya 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) untuk nombor perdana p yang tidak membahagi a, maka eksponen boleh dikurangkan modulo p − 1. RSA: pilih nombor perdana p dan q, n = p·q dan φ(n) = (p − 1)(q − 1); eksponen awam e perdana relatif dengan φ(n), dan eksponen persendirian ialah d = e⁻¹ mod φ(n). Sulitkan dengan c = mᵉ mod n dan nyahsulit dengan m = cᵈ mod n.

Eksponen perduaan

79 = 10011112 = 64 + 8 + 4 + 2 + 1

Kuasa dua berulang

411 ≡ 41 (mod 47)
412 ≡ 36 (mod 47)
414 ≡ 27 (mod 47)
418 ≡ 24 (mod 47)
4116 ≡ 12 (mod 47)
4132 ≡ 3 (mod 47)
4164 ≡ 9 (mod 47)

Darabkan kuasa yang diperlukan

4179 ≡ 41·36·27·24·9 ≡ 29 (mod 47)

Jawapan

4179 mod 47 = 29
9.Algoritma & kerumitan

Jawapan: D · Ω(n log n)

Mengapa ini jawapannya

Sebarang isihan perbandingan memerlukan sekurang-kurangnya log₂(n!) ≈ n log n perbandingan dalam kes terburuk. Isihan kiraan mengatasinya kerana ia tidak membandingkan.

Jawapan

D · Ω(n log n)
10.Algoritma & kerumitan

Jawapan: D · O(n)

Mengapa ini jawapannya

Menjumlahkan kos turun-ayak merentasi peringkat memberikan siri yang menumpu, jadi heapify berjalan dalam masa linear.

Jawapan

D · O(n)
11.Struktur data

Jawapan: C · Jadual yang lebih besar diperuntukkan dan setiap kunci disisip semula

Mengapa ini jawapannya

Oleh kerana indeks dikira modulo saiz jadual, semua kunci mesti dicincang semula ke dalam jadual baharu yang lebih besar; dengan penggandaan ini kekal O(1) teramortisasi.

Jawapan

C · Jadual yang lebih besar diperuntukkan dan setiap kunci disisip semula
12.Struktur data

Jawapan: A · Menjawab pertanyaan julat (seperti hasil tambah julat) dan kemas kini dalam O(log n)

Mengapa ini jawapannya

Pokok segmen menyimpan agregat untuk selang, menyokong pertanyaan julat dan kemas kini titik dalam masa O(log n).

Jawapan

A · Menjawab pertanyaan julat (seperti hasil tambah julat) dan kemas kini dalam O(log n)
13.Teori graf

Jawapan: Laluan Euler, tiada litar

Euler, Hamilton dan pokok: graf bersambung mempunyai litar Euler (setiap sisi sekali, kembali ke permulaan) apabila setiap bucu berdarjah genap, dan laluan Euler yang bukan litar apabila tepat dua bucu berdarjah ganjil; laluan itu kemudian bermula dari satu bucu ganjil ke bucu ganjil yang lain. Litar Hamilton melawat setiap bucu sekali; Kn mempunyai (n − 1)!/2 daripadanya. Pokok pada n bucu mempunyai n − 1 sisi, dan graf bersambung dengan m sisi mengekalkan pokok rentang selepas membuang m − n + 1 sisi.

Darjah

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

Bucu ganjil

B, G → 2
Laluan Euler, tiada litar

Jawapan

Laluan Euler, tiada litar

Laluan Euler bermula pada satu bucu ganjil dan berakhir pada bucu ganjil yang lain.

14.Teori graf

Jawapan: sisi AC

Laluan terpendek dan pokok rentang: algoritma Dijkstra menetapkan satu bucu setiap pusingan: bucu tidak tetap yang berjarak sementara paling kecil. Jaraknya kemudian muktamad, dan setiap jiran v mendapat d(v) = min(d(v), d(u) + w(u, v)). Algoritma Kruskal membina pokok rentang minimum dengan mengambil sisi dari ringan ke berat dan melangkau sebarang sisi yang akan menutup kitaran; algoritma Prim menumbuhkan satu pokok daripada bucu permulaan dengan sentiasa menambah sisi teringan yang keluar daripadanya. Pokok rentang n bucu mempunyai n − 1 sisi.

Algoritma Kruskal

1. DF (3)
2. BD (4)
3. EF (5)
4. BC (8)
5. AC (10)

nombor sisi 5

AC

Jawapan

sisi AC
15.Pangkalan data & SQL

Jawapan: D · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id

Mengapa ini jawapannya

GROUP BY customer_id membuat satu kumpulan bagi setiap pelanggan, dan COUNT(*) mengira baris dalam setiap kumpulan.

Jawapan

D · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
16.Pangkalan data & SQL

Jawapan: B · Ia dalam 2NF tetapi bukan 3NF

Mengapa ini jawapannya

Kunci mempunyai satu lajur, maka 2NF dipenuhi, tetapi emp_id → dept_id → dept_name ialah kebergantungan transitif, yang melanggar 3NF.

Jawapan

B · Ia dalam 2NF tetapi bukan 3NF
17.Rangkaian komputer

Jawapan: D · Banyak mesin yang dikompromi membanjiri sasaran dengan trafik

Mengapa ini jawapannya

Dalam serangan DDoS banyak sumber membebankan pelayan atau pautan supaya pengguna yang sah tidak dapat dilayan. Banyaknya sumber menyukarkan penyekatan ringkas.

Jawapan

D · Banyak mesin yang dikompromi membanjiri sasaran dengan trafik
18.Rangkaian komputer

Jawapan: D · Pertukaran RTS/CTS pilihan: CTS daripada AP memberitahu semua stesen berdekatan supaya menunggu

Mengapa ini jawapannya

Stesen menghantar Request to Send; AP menjawab Clear to Send, yang didengar oleh setiap stesen dalam julatnya, maka stesen tersembunyi menangguh untuk masa yang ditempah.

Jawapan

D · Pertukaran RTS/CTS pilihan: CTS daripada AP memberitahu semua stesen berdekatan supaya menunggu
19.Subnet IPv4

Jawapan: H = 14

Subnet IPv4: alamat mempunyai 32 bit. Awalan /p menyatakan berapa banyak bit permulaan yang mengenal pasti rangkaian; baki 32 − p bit menomborkan hos. Satu subnet mempunyai 2³²⁻ᵖ alamat, tetapi yang pertama (alamat rangkaian) dan yang terakhir (alamat siaran) tidak boleh diberikan kepada hos, jadi 2³²⁻ᵖ − 2 hos boleh dimuatkan. Pengecualian: /31 (pautan titik ke titik, RFC 3021) menggunakan kedua-dua 2 alamatnya untuk hos, dan /32 ialah satu alamat tunggal (satu hos atau loopback).

Bit untuk dipinjam

24 = 16 ≥ 16 → b = 4, /28

Hos bagi setiap subnet

24 − 2 = 14

Jawapan

H = 14
20.Subnet IPv4

Jawapan: x = 32

Subnet IPv4: alamat mempunyai 32 bit. Awalan /p menyatakan berapa banyak bit permulaan yang mengenal pasti rangkaian; baki 32 − p bit menomborkan hos. Satu subnet mempunyai 2³²⁻ᵖ alamat, tetapi yang pertama (alamat rangkaian) dan yang terakhir (alamat siaran) tidak boleh diberikan kepada hos, jadi 2³²⁻ᵖ − 2 hos boleh dimuatkan. Pengecualian: /31 (pautan titik ke titik, RFC 3021) menggunakan kedua-dua 2 alamatnya untuk hos, dan /32 ialah satu alamat tunggal (satu hos atau loopback).

Saiz blok

25 = 32

Subnet hos ini

rangkaian: ⌊35/32⌋·32 = 32
siaran: 32 + 32 − 1 = 63
hos boleh guna: 33 … 62

Jawapan

x = 32

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