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 dua0−12816413211618040201

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

0111 10008 bit
N =
2.Sistem nomborSukar
klik bit untuk menetapkannya012806403201608040201

Tetapkan bit kepada hasil 8-bit bagi 0011 1000 << 1. Apakah nilai hasil R dalam perpuluhan?

0011 1000<< 1
R =
3.Logik proposisi & pembuktianSederhana
(q → r) ∨ (r → q)(q → r) ∧ (¬r → ¬q)q ∧ r(q → r) ∧ (r → q)

Formula manakah yang setara secara logik dengan q ↔ r? Klik formula itu.

q ↔ r
  1. 1(q → r) ∨ (r → q)
  2. 2(q → r) ∧ (¬r → ¬q)
  3. 3q ∧ r
  4. 4(q → r) ∧ (r → q)
4.Logik proposisi & pembuktianSukar

Berapa banyak daripada 16 baris jadual kebenaran menjadikan ((¬s ∧ r) ∨ ¬(¬p ∧ ¬q)) ∧ ¬(r ∨ ¬(q ∧ s)) benar? Panggil nombor ini N.

((¬s ∧ r) ∨ ¬(¬p ∧ ¬q)) ∧ ¬(r ∨ ¬(q ∧ s))
N =
5.Logik digital: get, peta K & flip-flopSederhana
ABCD000111100001111000110312040507160121131150140819011010

Gunakan peta Karnaugh untuk mencari bentuk hasil tambah hasil darab (SOP) minimum bagi F(A, B, C, D) = Σm(1, 2, 6, 9, 13, 15). Berapa banyak sebutan hasil darab N yang ada padanya?

F(A, B, C, D) = Σm(1, 2, 6, 9, 13, 15)
N =
6.Logik digital: get, peta K & flip-flopSukar
TQ0​Q0​TQ1​Q1​TQ2​Q2​TQ3​Q3​CLKDOWN

pembilang turun perduaan 4-bit bermula pada 3 (perpuluhan, Q = 0011). Apakah kiraan Q (dalam perpuluhan) yang ditunjukkan selepas 40 denyut jam?

Q0 = 340n = 4
Q =
7.Teori nombor & aritmetik moduloSederhana

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

a = 3n = 20
3−1 mod 20 =
8.Teori nombor & aritmetik moduloSukar
279c = me​ mod n?m = cd​ mod nm(n, e) = (779, 23)d

Sulitkan mesej m = 279 dengan kunci awam RSA (n, e) = (779, 23). Cari teks sulit c.

n = 779e = 23m = 279
c =
9.Algoritma & kerumitanSederhana

Carian pertama lebar pada graf tidak berpemberat mencari:

  1. ASusunan topologi dalam semua graf
  2. BLaluan terpendek dalam graf yang mengandungi pemberat sisi negatif
  3. CLaluan terpendek dari segi bilangan sisi dari nod permulaan
  4. DPokok rentang minimum
10.Algoritma & kerumitanSukar

Isihan sisipan berjalan dalam O(n) pada input tersusun. Adakah ini bercanggah dengan batas bawah Ω(n log n) untuk isihan perbandingan?

  1. ATidak, batas bawah terpakai pada kes terburuk merentasi semua input, bukan pada setiap input
  2. BYa, tetapi hanya untuk tatasusunan lebih pendek daripada 100
  3. CTidak, kerana isihan sisipan bukan isihan perbandingan
  4. DYa, oleh itu batas bawah itu salah
11.Struktur dataSederhana

Struktur data manakah yang digunakan oleh carian pertama dalam (versi lelaran)?

  1. AJadual cincang sahaja
  2. BBaris gilir (queue)
  3. CTindanan (stack)
  4. DTimbunan (heap)
12.Struktur dataSukar

Mengapakah pokok-B digunakan dalam pangkalan data dan sistem fail?

  1. AFaktor percabangan yang tinggi mengekalkan pokok cetek, mengurangkan bacaan cakera yang perlahan
  2. BIa menyimpan data tidak tersusun
  3. CIa menggunakan memori kurang daripada mana-mana tatasusunan, jadi seluruh indeks sentiasa muat dalam memori utama
  4. DIa tidak memerlukan pengimbangan semula
13.Teori grafSederhana

Sebuah pokok mempunyai 2 bucu berdarjah 3, 2 bucu berdarjah 4, 3 bucu berdarjah 5, 4 bucu berdarjah 2, dan semua bucu lainnya ialah daun (berdarjah 1). Berapa banyak daun L yang ada padanya?

2 × deg 32 × deg 43 × deg 54 × deg 2
L =
14.Teori grafSukar
1391018111517812ABCDEF

Algoritma Prim membina pokok rentang minimum bermula dari bucu D. Klik sisi yang ditambahnya sebagai sisi nombor 4.

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

Pertanyaan manakah yang menyenaraikan pelanggan yang tidak pernah membuat pesanan?

  1. ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
  2. BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
16.Pangkalan data & SQLSukar

Mengapakah banyak DBMS menggunakan penguncian dua fasa ketat, memegang kunci eksklusif sehingga komit?

  1. AIa menghapuskan keperluan untuk log transaksi
  2. BIa mencegah pembatalan berlata (cascading abort), kerana tiada sesiapa boleh membaca penulisan belum komit
  3. CIa membolehkan transaksi membaca data kotor dengan selamat
  4. DIa menjadikan kebuntuan mustahil
17.Rangkaian komputerSederhana

NAT (terjemahan alamat rangkaian) terutamanya digunakan untuk:

  1. AMeningkatkan kelajuan kabel rangkaian
  2. BMenterjemahkan nama domain kepada alamat IP bagi peranti pada rangkaian setempat
  3. CMembenarkan banyak peranti beralamat persendirian berkongsi satu alamat IP awam
  4. DMenyulitkan trafik antara dua tapak
18.Rangkaian komputerSukar

Dalam sambungan TCP, apakah yang dikawal oleh tetingkap penerimaan (rwnd)?

  1. ASaiz setiap pengepala paket IP
  2. BMasa tamat penghantaran semula, yang dikira daripada masa perjalanan pergi balik yang diukur bagi setiap segmen
  3. CBerapa banyak data tanpa pengakuan yang boleh dihantar oleh penghantar, berdasarkan penimbal penerima
  4. DBilangan port yang terbuka
19.Subnet IPv4Sederhana
/24 → /2711111111111111111111111111100000bit rangkaianbit hos

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

192.168.10.0/246 subnets
H =
20.Subnet IPv4Sukar
oktet terakhir = 34012806413201608041201rangkaianhos

Sebuah hos mempunyai alamat 10.20.11.34/30. Apakah nombor terakhir (oktet keempat) x bagi alamat siaran subnetnya?

10.20.11.34/30
x =

3Larutan

1.Sistem nombor

Jawapan: N = 120

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.

64 + 32 + 16 + 8 = 120

Jawapan

N = 120
2.Sistem nombor

Jawapan: R = 112

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

Anjak ke kiri sebanyak 1 menggerakkan setiap bit 1 tempat ke kiri; bit yang jatuh dari hujung kiri hilang dan sifar masuk di sebelah kanan.

0011 1000 << 1
= 0111 0000

Nilai hasil

0111 0000₂ = 112

Jawapan

R = 112
3.Logik proposisi & pembuktian

Jawapan: (q → r) ∧ (r → q)

Kesetaraan logik: dua formula adalah setara (≡) apabila ia mempunyai nilai yang sama dalam setiap baris jadual kebenaran. Tautologi ialah 1 dalam setiap baris, percanggahan ialah 0 dalam setiap baris, dan kontingensi bukan kedua-duanya. Hukum yang berguna: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b dan ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (kontrapositif); ¬(a → b) ≡ a ∧ ¬b; dan hukum agihan, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).

Hukum

a ↔ b bermaksud implikasi itu benar dalam kedua-dua arah: (a → b) ∧ (b → a).
q ↔ r ≡ (q → r) ∧ (r → q)

Semak dengan jadual kebenaran

q = 1, r = 1: 1 | 1 1 1 1
q = 1, r = 0: 0 | 1 0 0 0
q = 0, r = 1: 0 | 1 1 0 0
q = 0, r = 0: 1 | 1 1 0 1

Jawapan

(q → r) ∧ (r → q)

Lajur selepas palang ialah pilihan mengikut susunan yang ditunjukkan.

4.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.

Lajur

¬s; ¬s ∧ r; ¬p; ¬q; ¬p ∧ ¬q; ¬(¬p ∧ ¬q); (¬s ∧ r) ∨ ¬(¬p ∧ ¬q); q ∧ s; ¬(q ∧ s); r ∨ ¬(q ∧ s); ¬(r ∨ ¬(q ∧ s)); ((¬s ∧ r) ∨ ¬(¬p ∧ ¬q)) ∧ ¬(r ∨ ¬(q ∧ s))

Pecahkan pada p

p = 1: 1
p = 0: 1
N = 1 + 1 = 2

Jawapan

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

Jawapan: N = 3

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.

ABCD000111100001111000110312040507160121131150140819011010

Kumpulkan 1

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

B′C′D
A′CD′
ABD

Bentuk SOP minimum

F = B′C′D + A′CD′ + ABD
N = 3

Jawapan

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

Jawapan: Q = 11

Flip-flop dan pembilang: flip-flop hanya berubah pada pinggir jam yang aktif. D menyalin inputnya (Q⁺ = D); T bertukar keadaan apabila T = 1; JK kekal untuk 00, set semula untuk 01, set untuk 10 dan bertukar keadaan untuk 11. Pembilang perduaan n-bit mempunyai 2ⁿ keadaan dan mengira modulo 2ⁿ; pembilang mod-N mengira 0, 1, …, N − 1 dan kembali ke 0, dan memerlukan flip-flop sebanyak n terkecil dengan 2ⁿ ≥ N. Setiap peringkat pembilang riak membahagi dua frekuensi, maka output terakhir pembilang mod-N berjalan pada fclk/N. Pembilang Johnson dengan n flip-flop mempunyai 2n keadaan, pembilang gelang n.

Kitaran penuh

Setiap 16 denyut membawa pembilang kembali ke keadaan yang sama.

40 = 2·16 + 8

Kiraan selepas denyut yang tinggal

Q = (3 − 8) mod 16 = 11
Q = 1011₂

Jawapan

Q = 11
7.Teori nombor & aritmetik modulo

Jawapan: 3−1 mod 20 = 7

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·3 (mod 20).

r = 20, t = 0
r = 3, q = 6, t = 1
r = 2, q = 1, t = −6
r = 1, q = 2, t = 7

Songsangan

1 ≡ 7·3 (mod 20)
x = 7
semakan: 3·7 = 21 = 1·20 + 1

Jawapan

3−1 mod 20 = 7
8.Teori nombor & aritmetik modulo

Jawapan: c = 185

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.

Kuasa dua berulang

23 = 16 + 4 + 2 + 1
2791 ≡ 279 (mod 779)
2792 ≡ 720 (mod 779)
2794 ≡ 365 (mod 779)
2798 ≡ 16 (mod 779)
27916 ≡ 256 (mod 779)
27923 ≡ 279·720·365·256 ≡ 185 (mod 779)

Teks sulit

c = 185

Jawapan

c = 185
9.Algoritma & kerumitan

Jawapan: C · Laluan terpendek dari segi bilangan sisi dari nod permulaan

Mengapa ini jawapannya

BFS melawat nod mengikut urutan jarak (sisi) dari sumber, jadi ia mencari laluan terpendek tidak berpemberat dalam O(V + E).

Jawapan

C · Laluan terpendek dari segi bilangan sisi dari nod permulaan
10.Algoritma & kerumitan

Jawapan: A · Tidak, batas bawah terpakai pada kes terburuk merentasi semua input, bukan pada setiap input

Mengapa ini jawapannya

Batas itu menyatakan bahawa setiap isihan perbandingan memerlukan kira-kira n log n perbandingan pada sesetengah input bersaiz n; input khas boleh jauh lebih pantas.

Jawapan

A · Tidak, batas bawah terpakai pada kes terburuk merentasi semua input, bukan pada setiap input
11.Struktur data

Jawapan: C · Tindanan (stack)

Mengapa ini jawapannya

DFS meneroka sedalam mungkin, secara semula jadi menggunakan tindanan (atau tindanan panggilan rekursi); BFS menggunakan baris gilir.

Jawapan

C · Tindanan (stack)
12.Struktur data

Jawapan: A · Faktor percabangan yang tinggi mengekalkan pokok cetek, mengurangkan bacaan cakera yang perlahan

Mengapa ini jawapannya

Pokok-B menyimpan banyak kunci setiap nod, jadi ketinggian kecil dan sedikit bacaan blok diperlukan setiap carian; pokok B+ juga memaut daun untuk imbasan julat.

Jawapan

A · Faktor percabangan yang tinggi mengekalkan pokok cetek, mengurangkan bacaan cakera yang perlahan
13.Teori graf

Jawapan: L = 17

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.

Lema jabat tangan untuk pokok

L + 37 = 2(L + 11) − 2
L = 17

Jawapan

L = 17

Jalan pintas: L = 2 + Σ (d − 2) ke atas bucu berdarjah d ≥ 3.

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 Prim

1. DE (15)
2. EF (8)
3. CE (11)
4. AC (9)
5. BC (10)

nombor sisi 4

AC

Jawapan

sisi AC
15.Pangkalan data & SQL

Jawapan: B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL

Mengapa ini jawapannya

Left join mengekalkan semua pelanggan dan mengisi lajur pesanan dengan NULL apabila tiada padanan; IS NULL kemudian memilih tepat pelanggan tersebut.

Jawapan

B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
16.Pangkalan data & SQL

Jawapan: B · Ia mencegah pembatalan berlata (cascading abort), kerana tiada sesiapa boleh membaca penulisan belum komit

Mengapa ini jawapannya

2PL asas menjamin kebolehsirian, tetapi melepaskan kunci tulis lebih awal boleh membolehkan orang lain membaca data yang kemudian di-rollback; 2PL ketat mengelakkan ini.

Jawapan

B · Ia mencegah pembatalan berlata (cascading abort), kerana tiada sesiapa boleh membaca penulisan belum komit
17.Rangkaian komputer

Jawapan: C · Membenarkan banyak peranti beralamat persendirian berkongsi satu alamat IP awam

Mengapa ini jawapannya

NAT menulis semula alamat (dan port) supaya rangkaian persendirian dapat mengakses internet melalui bilangan alamat awam yang lebih kecil.

Jawapan

C · Membenarkan banyak peranti beralamat persendirian berkongsi satu alamat IP awam
18.Rangkaian komputer

Jawapan: C · Berapa banyak data tanpa pengakuan yang boleh dihantar oleh penghantar, berdasarkan penimbal penerima

Mengapa ini jawapannya

Penerima mengumumkan berapa banyak ruang penimbal yang dimilikinya; penghantar mengehadkan data tanpa pengakuan dengan sewajarnya, menghalang penerima daripada terlebih beban.

Jawapan

C · Berapa banyak data tanpa pengakuan yang boleh dihantar oleh penghantar, berdasarkan penimbal penerima
19.Subnet IPv4

Jawapan: H = 30

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

23 = 8 ≥ 6 → b = 3, /27

Hos bagi setiap subnet

25 − 2 = 30

Jawapan

H = 30
20.Subnet IPv4

Jawapan: x = 35

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

22 = 4

Subnet hos ini

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

Jawapan

x = 35

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