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−12816413211608040201

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

0111 00008 bit
N =
2.Sistem nomborSukar
24 bit1 px800 px600 pxM = ? KiB

Satu imej tanpa mampatan berukuran 800 × 600 piksel dengan 24 bit setiap piksel. Berapakah memori M yang diambilnya, dalam KiB (1 KiB = 1024 bait)?

800 × 600 px24 bit/px1 KiB = 1024 B
M = KiB
3.Logik proposisi & pembuktianSederhana
(a → c) ∨ (b → c)(a → c) ∧ (b → c)a ∨ (b → c)(a ∧ b) → c

Formula manakah yang setara secara logik dengan (a ∨ b) → c? Klik formula itu.

(a ∨ b) → c
  1. 1(a → c) ∨ (b → c)
  2. 2(a → c) ∧ (b → c)
  3. 3a ∨ (b → c)
  4. 4(a ∧ b) → c
4.Logik proposisi & pembuktianSukar
∃x (¬A(x) ∧ ¬B(x))∀x (¬A(x) ∨ ¬B(x))∃x (¬A(x) ∨ ¬B(x))∀x (¬A(x) ∧ ¬B(x))

Pernyataan manakah yang setara dengan ¬∀x (A(x) ∨ B(x)), dengan penafian dialihkan sepenuhnya ke dalam? Klik pernyataan itu.

¬∀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.Logik digital: get, peta K & flip-flopSederhana
ABCD0001111000011110111111

Dalam peta Karnaugh ini tepat satu 1 tidak mempunyai 1 yang berjiran, maka ia kekal sebagai kumpulan satu sel (minterm penuh empat literal) dalam bentuk SOP minimum. Jiran merentasi tepi peta dikira. Klik sel itu.

F = Σm(3, 4, 10, 12, 14, 15)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
6.Logik digital: get, peta K & flip-flopSukar
ABCD00011110000111100011031204050716X12113015014X819X11010

Cari bentuk SOP minimum bagi F(A, B, C, D) = Σm(1, 2, 6, 9, 13) + d(8, 11, 12), dengan d menandakan keadaan tidak peduli. Berapa banyak sebutan hasil darab N yang ada padanya?

F(A, B, C, D) = Σm(1, 2, 6, 9, 13) + d(8, 11, 12)
N =
7.Teori nombor & aritmetik moduloSederhana

Cari integer positif terkecil x dengan x ≡ 2 (mod 9) dan x ≡ 5 (mod 11).

x ≡ 2 (mod 9)x ≡ 5 (mod 11)
x =
8.Teori nombor & aritmetik moduloSukar
mc = me​ mod ncm = cd​ mod nm(n, e) = (1739, 19)d = ?

Kunci RSA menggunakan nombor perdana p = 37 dan q = 47 serta eksponen awam e = 19. Cari eksponen persendirian d (0 < d < φ(n)).

p = 37q = 47e = 19
d =
9.Algoritma & kerumitanSederhana

Pengaturcaraan dinamik berguna apabila sesuatu masalah mempunyai:

  1. ATiada submasalah langsung, jadi ia boleh diselesaikan dalam satu langkah
  2. BHanya input rawak
  3. CSubmasalah bertindih dan substruktur optimum
  4. DSatu gelung
10.Algoritma & kerumitanSukar

Pendaraban Karatsuba memenuhi T(n) = 3T(n/2) + O(n). Apakah penyelesaiannya?

  1. AΘ(n²)
  2. BΘ(n log n)
  3. CΘ(n3)
  4. DΘ(nlog₂ 3), kira-kira n1.585
11.Struktur dataSederhana

Struktur data manakah yang digunakan oleh program yang sedang berjalan untuk menjejaki panggilan fungsi aktif dan pemboleh ubah setempatnya?

  1. ATindanan panggilan (call stack)
  2. BPokok carian binari bagi bingkai
  3. CBaris gilir memori timbunan
  4. DJadual cincang fungsi
12.Struktur dataSukar

Apakah kos masa dan ruang tambahan untuk membalikkan senarai berpaut tunggal di tempat?

  1. AMasa O(n) dan ruang tambahan O(1)
  2. BMasa O(1) dan ruang tambahan O(1)
  3. CMasa O(n log n) dan ruang tambahan O(1)
  4. DMasa O(n) dan ruang tambahan O(n)
13.Teori grafSederhana
ABCDELitar 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| = 5|E| = 5
  1. 1Litar Euler
  2. 2Laluan Euler, tiada litar
  3. 3tiada kedua-duanya
14.Teori grafSukar
2931134914ABCDEF

Algoritma Dijkstra bermula dari A. Klik bucu yang ditetapkan (dijadikan tetap) dalam pusingan 4; A sendiri ialah pusingan 1.

mula: Apusingan 4
  1. 1A
  2. 2B
  3. 3C
  4. 4D
  5. 5E
  6. 6F
15.Pangkalan data & SQLSederhana

Pertanyaan manakah yang memulangkan bilangan pesanan bagi setiap pelanggan?

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

Bilakah jadual transaksi serentak dipanggil boleh disiri (serializable)?

  1. AApabila setiap transaksi diberi nombor siri
  2. BApabila tiada transaksi pernah membaca data
  3. CApabila transaksi dijalankan pada satu CPU sahaja
  4. DApabila kesannya setara dengan beberapa pelaksanaan bersiri bagi transaksi yang sama
17.Rangkaian komputerSederhana

Awalan tunggal manakah yang meringkaskan kedua-dua 192.168.0.0/24 dan 192.168.1.0/24?

  1. A192.168.0.0/25
  2. B192.168.0.0/23
  3. C192.168.0.0/22
  4. D192.168.1.0/23
18.Rangkaian komputerSukar

Dalam serangan banjir SYN, sumber apakah yang cuba dihabiskan oleh penyerang?

  1. ACache DNS klien
  2. BJadual alamat MAC suis
  3. CRuang cakera pelayan
  4. DJadual sambungan separuh terbuka pada pelayan
19.Subnet IPv4Sederhana
/24 → /2811111111111111111111111111110000bit rangkaianbit hos

Rangkaian 192.168.16.0/24 dibahagikan kepada subnet /28, bernombor 1, 2, 3, … dari alamat terendah (subnet 1 bermula pada .0). Apakah oktet keempat x alamat rangkaian subnet 10?

192.168.16.0/24/28subnet 10 (subnet 1 bermula pada .0)
x =
20.Subnet IPv4Sukar
oktet ketiga = 93012816403211618140211rangkaianhos

Satu hos mempunyai alamat 172.20.93.193/19. Apakah oktet ketiga x alamat siaran subnetnya?

172.20.93.193/19
x =

3Larutan

1.Sistem nombor

Jawapan: N = 112

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 = 112

Jawapan

N = 112
2.Sistem nombor

Jawapan: M = 1406 KiB

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.

Bit dan bait

800·600·24 = 11520000 bit = 1440000 B

Tukar kepada KiB

1440000/1024 = 1406.25 KiB

Jawapan

M = 1406.25 KiB
3.Logik proposisi & pembuktian

Jawapan: (a → c) ∧ (b → c)

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) → c memerlukan c apabila sama ada a atau b benar: (a → c) ∧ (b → c).
(a ∨ b) → c ≡ (a → c) ∧ (b → c)

Semak dengan jadual kebenaran

a = 1, b = 1, c = 1: 1 | 1 1 1 1
a = 1, b = 1, c = 0: 0 | 0 0 1 0
a = 1, b = 0, c = 1: 1 | 1 1 1 1
a = 1, b = 0, c = 0: 0 | 1 0 1 1
a = 0, b = 1, c = 1: 1 | 1 1 1 1
a = 0, b = 1, c = 0: 0 | 1 0 0 1
a = 0, b = 0, c = 1: 1 | 1 1 1 1
a = 0, b = 0, c = 0: 1 | 1 1 1 1

Jawapan

(a → c) ∧ (b → c)

Lajur selepas palang ialah pilihan mengikut susunan yang ditunjukkan.

4.Logik proposisi & pembuktian

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

Pengkuantiti dan hujah: ¬∀x P(x) ≡ ∃x ¬P(x) dan ¬∃x P(x) ≡ ∀x ¬P(x). Alihkan penafian ke dalam, tukar setiap pengkuantiti yang dilaluinya, dan nafikan formula di dalam dengan hukum proposisi, seperti ¬(a → b) ≡ a ∧ ¬b. Hujah adalah sah apabila kesimpulan ialah 1 dalam setiap baris yang semua premisnya 1. Satu baris dengan premis benar dan kesimpulan palsu ialah contoh penyangkal dan menunjukkan hujah itu tidak sah.

Alihkan penafian ke dalam

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

Jawapan

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

Pilihan lain sama ada mengekalkan pengkuantiti tanpa perubahan, mengubah susunan pengkuantiti, atau menafikan formula dalam dengan salah.

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

Jawapan: AB = 00, CD = 11

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.

Jiran bagi setiap 1

1 yang mempunyai jiran 1 boleh menyertai kumpulan dua atau lebih.

m3: m2, m1, m7, m11 → 0
ABCD0001111000011110111111

1 yang terpencil

m3 = A′B′CD → AB = 00, CD = 11

Jawapan

AB = 00, CD = 11
6.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.

Implikan perdana

Kumpulan terbesar yang boleh dibentuk daripada 1 dan X.

B′C′D, AC′, A′CD′, AB′D
ABCD00011110000111100011031204050716X12113015014X819X11010

Liputan minimum

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

Jawapan

N = 3
7.Teori nombor & aritmetik modulo

Jawapan: x = 38

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

Kongruen pertama

x = 2 + 9k

Kongruen kedua

2 + 9k ≡ 5 (mod 11) → 9k ≡ 3 (mod 11)
k ≡ 5·3 ≡ 4 (mod 11)

Keputusan

x = 2 + 9·4 = 38
x = 38
semakan: 38 mod 9 = 2, 38 mod 11 = 5

Jawapan

x = 38
8.Teori nombor & aritmetik modulo

Jawapan: d = 523

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.

Modulus dan totien

n = 37·47 = 1739
φ(n) = 36·46 = 1656

Algoritma Euclid lanjutan

r = 1656, t = 0
r = 19, q = 87, t = 1
r = 3, q = 6, t = −87
r = 1, q = 3, t = 523

Eksponen persendirian

d = 523
semakan: 19·523 = 9937 = 6·1656 + 1

Jawapan

d = 523
9.Algoritma & kerumitan

Jawapan: C · Submasalah bertindih dan substruktur optimum

Mengapa ini jawapannya

Menyimpan hasil submasalah bertindih (memoisasi atau penjadualan) mengelakkan kerja berulang, menukar algoritma eksponen menjadi polinomial.

Jawapan

C · Submasalah bertindih dan substruktur optimum
10.Algoritma & kerumitan

Jawapan: D · Θ(nlog₂ 3), kira-kira n1.585

Mengapa ini jawapannya

Oleh sebab log₂ 3 ≈ 1.585 > 1, daun mendominasi mengikut teorem induk, mengatasi kaedah buku sekolah O(n²).

Jawapan

D · Θ(nlog₂ 3), kira-kira n1.585
11.Struktur data

Jawapan: A · Tindanan panggilan (call stack)

Mengapa ini jawapannya

Setiap panggilan mem-push bingkai tindanan dan setiap pulangan mem-pop-nya, itulah sebabnya panggilan terkini selesai dahulu.

Jawapan

A · Tindanan panggilan (call stack)
12.Struktur data

Jawapan: A · Masa O(n) dan ruang tambahan O(1)

Mengapa ini jawapannya

Menyimpan tiga penuding (sebelumnya, semasa, seterusnya) membolehkan anda membalikkan setiap paut dalam satu lintasan tanpa memperuntukkan nod baharu.

Jawapan

A · Masa O(n) dan ruang tambahan O(1)
13.Teori graf

Jawapan: Litar Euler

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) = 2, deg(C) = 2, deg(D) = 2, deg(E) = 2

Bucu ganjil

0
Litar Euler

Jawapan

Litar Euler
14.Teori graf

Jawapan: E

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.

Dijkstra pusingan demi pusingan

1. A (0): B: 2, C: 9
2. B (2): C: 5, D: 13, E: 16
3. C (5): E: 8
4. E (8): D: 12
5. D (12): F: 21
6. F (21)

pusingan 4

E

Jawapan

E
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: D · Apabila kesannya setara dengan beberapa pelaksanaan bersiri bagi transaksi yang sama

Mengapa ini jawapannya

Kebolehsirian ialah kriteria ketepatan utama untuk keserentakan: hasil yang berselang-seli mesti sama dengan hasil urutan satu-satu.

Jawapan

D · Apabila kesannya setara dengan beberapa pelaksanaan bersiri bagi transaksi yang sama
17.Rangkaian komputer

Jawapan: B · 192.168.0.0/23

Mengapa ini jawapannya

0 dan 1 berkongsi semua bit oktet ketiga kecuali yang terakhir, maka awalan yang kurang satu bit (/23) bermula pada 192.168.0.0 meliputi kedua-duanya dengan tepat.

Jawapan

B · 192.168.0.0/23
18.Rangkaian komputer

Jawapan: D · Jadual sambungan separuh terbuka pada pelayan

Mengapa ini jawapannya

Setiap SYN membuat pelayan menempah keadaan dan menunggu ACK yang tidak pernah datang. Kuki SYN mengelakkan penyimpanan keadaan sehingga jabat tangan selesai.

Jawapan

D · Jadual sambungan separuh terbuka pada pelayan
19.Subnet IPv4

Jawapan: x = 144

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

Saiz blok

24 = 16

Subnet nombor 10

rangkaian: (10 − 1)·16 = 144
siaran: 144 + 16 − 1 = 159

Jawapan

x = 144
20.Subnet IPv4

Jawapan: x = 95

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

Saiz blok dalam oktet ketiga

25 = 32

Subnet hos ini

rangkaian: 172.20.64.0
siaran: 172.20.95.255

Jawapan

x = 95

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