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
Pelengkap dua 8-bit0−12806403201608040201

Tetapkan bit supaya ia menyimpan −83 dalam pelengkap dua 8-bit. Dibaca sebagai nombor tanpa tanda, apakah nilai corak U?

N = −838 bit
U =
2.Sistem nomborSukar
klik bit untuk menetapkannya012806403201608040201

Tetapkan bit kepada hasil 8-bit bagi 0101 0100 XOR 1000 1111. Apakah nilai hasil R dalam perpuluhan?

0101 0100XOR1000 1111
R =
3.Logik proposisi & pembuktianSederhana
abcb ∧ ca ∧ (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
pqrq → (p ∨ r)qp111110101100011010001000

Hujah dengan premis q → (p ∨ r); q dan kesimpulan p adalah tidak sah. Klik baris jadual kebenaran yang menjadi contoh penyangkal.

q → (p ∨ r)q∴ p
  1. 1p = 1, q = 1, r = 1
  2. 2p = 1, q = 1, r = 0
  3. 3p = 1, q = 0, r = 1
  4. 4p = 1, q = 0, r = 0
  5. 5p = 0, q = 1, r = 1
  6. 6p = 0, q = 1, r = 0
  7. 7p = 0, q = 0, r = 1
  8. 8p = 0, q = 0, r = 0
5.Logik digital: get, peta K & flip-flopSederhana
ABCD000111100001111010110302040517161121131150141819011010

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

F(A, B, C, D) = Σm(0, 1, 6, 7, 8, 9, 12, 13, 15)
N =
6.Logik digital: get, peta K & flip-flopSukar
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKSHIFT

Daftar anjak 4-bit Q₃Q₂Q₁Q₀ menyimpan 0000. Pada setiap pinggir jam bit beranjak satu tempat ke kanan (Q₃ → Q₂ → Q₁ → Q₀, Q₀ hilang) dan input bersiri masuk ke Q₃. Input bersiri ialah 1, 1, 0, 0 pada 4 pinggir. Beri keadaan akhir Q = Q₃Q₂Q₁Q₀ sebagai nombor perpuluhan.

Q₃Q₂Q₁Q₀ = 00001, 1, 0, 0
Q =
7.Teori nombor & aritmetik moduloSederhana

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

a = 9n = 59
9−1 mod 59 =
8.Teori nombor & aritmetik moduloSukar
mc = me​ mod ncm = cd​ mod nm(n, e) = (1363, 17)d = ?

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

p = 29q = 47e = 17
d =
9.Algoritma & kerumitanSederhana

Kira-kira berapa banyak perbandingan yang diperlukan oleh carian binari dalam kes terburuk pada tatasusunan tersusun 1,000,000 elemen?

  1. AKira-kira 100
  2. BKira-kira 20
  3. CKira-kira 1,000
  4. DKira-kira 500,000
10.Algoritma & kerumitanSukar

Apakah kerumitan masa bagi: for i = 1 to n: for (j = i; j ≤ n; j = j + i) lakukan kerja O(1)?

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

Bagaimanakah extract-min berfungsi dalam timbunan min binari?

  1. ACari semua daun untuk minimum baharu
  2. BBuang akar dan anjakkan semua elemen satu tempat ke kiri
  3. CBuang elemen terakhir tatasusunan
  4. DPindahkan elemen terakhir ke akar dan gerakkannya ke bawah
12.Struktur dataSukar

Dalam algoritma pokok rentang minimum Kruskal, untuk apakah struktur union-find digunakan?

  1. AMengisih sisi mengikut pemberat
  2. BMemilih bucu permulaan
  3. CMenyemak sama ada dua hujung sesuatu sisi sudah bersambung
  4. DMenyimpan jarak semasa setiap bucu dari sumber semasa carian
13.Teori grafSederhana

Berapa banyak litar Hamilton H yang berbeza pada graf lengkap K4? Litar yang hanya berbeza pada bucu permulaan atau arah dikira sama.

K4
H =
14.Teori grafSukar
94141278512410ABCDEFG

Gunakan algoritma Dijkstra untuk mencari panjang d(F) laluan terpendek dari A ke F dalam graf berpemberat.

mula: Aakhir: F
d(F) =
15.Pangkalan data & SQLSederhana

Pernyataan manakah tentang HAVING yang betul?

  1. AIa menyusun hasil
  2. BIa boleh menggunakan fungsi agregat untuk menapis kumpulan
  3. CIa tidak boleh digunakan dengan GROUP BY
  4. DIa mesti datang sebelum WHERE dalam penyataan SELECT
16.Pangkalan data & SQLSukar

Diberi kebergantungan fungsi A → B, B → C dan C → D pada R(A, B, C, D), apakah penutupan (closure) A+?

  1. A{A}
  2. B{A, B, C, D}
  3. C{A, B}
  4. D{A, B, C}
17.Rangkaian komputerSederhana

Julat nombor port TCP/UDP manakah yang dikhaskan sebagai port "terkenal" (well-known)?

  1. A0–1023
  2. B49152–65535
  3. C0–65535
  4. D1024–49151
18.Rangkaian komputerSukar

Apakah unit penghantaran maksimum (MTU) muatan Ethernet standard?

  1. A9000 bait dalam setiap rangkaian
  2. B64 bait
  3. C65,535 bait
  4. D1500 bait
19.Subnet IPv4Sederhana
/24 → /2611111111111111111111111111000000bit rangkaianbit hos

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

192.168.10.0/244 subnets
H =
20.Subnet IPv4Sukar

Rangkaian 192.168.247.0/24 dibahagikan dengan VLSM untuk LAN berikut: A: 55 hos, B: 58 hos, C: 14 hos, D: 30 hos. Subnet diperuntukkan dari .0 ke atas, LAN dengan hos paling banyak dahulu, masing-masing dengan subnet terkecil yang muat. Apakah oktet keempat x alamat rangkaian LAN D?

A: 55B: 58C: 14D: 30
x =

3Larutan

1.Sistem nombor

Jawapan: U = 173

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.

Songsang dan tambah satu

83 = 0101 0011
disongsangkan: 1010 1100
+1 → 1010 1101

Baca sebagai tanpa tanda

1010 1101₂ = 256 − 83 = 173

Jawapan

U = 173
2.Sistem nombor

Jawapan: R = 219

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

XOR memberikan 1 di mana kedua-dua bit berbeza.

0101 0100
XOR 1000 1111
= 1101 1011

Nilai hasil

1101 1011₂ = 219

Jawapan

R = 219
3.Logik proposisi & pembuktian

Jawapan: N = 5

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 = 0, ¬c ∧ b = 0, b ∧ c = 1, a ∧ (b ∧ c) = 1, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 0
a = 1, b = 1, c = 0: ¬c = 1, ¬c ∧ b = 1, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 0
a = 1, b = 0, c = 1: ¬c = 0, ¬c ∧ b = 0, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 1
a = 1, b = 0, c = 0: ¬c = 1, ¬c ∧ b = 0, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 1
a = 0, b = 1, c = 1: ¬c = 0, ¬c ∧ b = 0, b ∧ c = 1, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 1
a = 0, b = 1, c = 0: ¬c = 1, ¬c ∧ b = 1, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 0
a = 0, b = 0, c = 1: ¬c = 0, ¬c ∧ b = 0, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 1
a = 0, b = 0, c = 0: ¬c = 1, ¬c ∧ b = 0, b ∧ c = 0, a ∧ (b ∧ c) = 0, (¬c ∧ b) ↔ (a ∧ (b ∧ c)) = 1

Kira baris dengan nilai 1

(¬c ∧ b) ↔ (a ∧ (b ∧ c)): 0, 0, 1, 1, 1, 0, 1, 1
N = 5

Jawapan

N = 5
4.Logik proposisi & pembuktian

Jawapan: p = 0, q = 1, r = 1

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.

Premis dan kesimpulan baris demi baris

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

Contoh penyangkal

p = 0, q = 1, r = 1

Jawapan

p = 0, q = 1, r = 1

Hujah dengan bentuk ini kelihatan seperti peraturan yang sah, tetapi satu baris sudah memadai untuk menunjukkan bahawa ia tidak sah.

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.

ABCD000111100001111010110302040517161121131150141819011010

Kumpulkan 0

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

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

Bentuk POS minimum

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

Jawapan

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

Jawapan: Q = 3

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.

Keadaan selepas setiap pinggir

0000 → 1000 → 1100 → 0110 → 0011

Nilai perpuluhan

0011₂ = 3

Jawapan

Q = 3
7.Teori nombor & aritmetik modulo

Jawapan: 9−1 mod 59 = 46

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·9 (mod 59).

r = 59, t = 0
r = 9, q = 6, t = 1
r = 5, q = 1, t = −6
r = 4, q = 1, t = 7
r = 1, q = 4, t = −13

Songsangan

1 ≡ −13·9 (mod 59)
x = 46
semakan: 9·46 = 414 = 7·59 + 1

Jawapan

9−1 mod 59 = 46
8.Teori nombor & aritmetik modulo

Jawapan: d = 985

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 = 29·47 = 1363
φ(n) = 28·46 = 1288

Algoritma Euclid lanjutan

r = 1288, t = 0
r = 17, q = 75, t = 1
r = 13, q = 1, t = −75
r = 4, q = 3, t = 76
r = 1, q = 4, t = −303

Eksponen persendirian

d = 985
semakan: 17·985 = 16745 = 13·1288 + 1

Jawapan

d = 985
9.Algoritma & kerumitan

Jawapan: B · Kira-kira 20

Mengapa ini jawapannya

220 ≈ 1,048,576, jadi selepas kira-kira 20 pembahagian dua hanya satu elemen yang tinggal.

Jawapan

B · Kira-kira 20
10.Algoritma & kerumitan

Jawapan: C · O(n log n)

Mengapa ini jawapannya

Jumlahnya ialah n / 1 + n / 2 + ... + n / n = n × Hn, dan nombor harmonik Hn ialah Θ(log n).

Jawapan

C · O(n log n)
11.Struktur data

Jawapan: D · Pindahkan elemen terakhir ke akar dan gerakkannya ke bawah

Mengapa ini jawapannya

Elemen terakhir mengisi lubang di akar dan ditukar dengan anaknya yang lebih kecil sehingga sifat timbunan dipenuhi, mengambil O(log n).

Jawapan

D · Pindahkan elemen terakhir ke akar dan gerakkannya ke bawah
12.Struktur data

Jawapan: C · Menyemak sama ada dua hujung sesuatu sisi sudah bersambung

Mengapa ini jawapannya

Find memberitahu sama ada kedua-dua hujung berada dalam komponen yang sama; jika tidak, sisi ditambah dan union menggabungkan komponen.

Jawapan

C · Menyemak sama ada dua hujung sesuatu sisi sudah bersambung
13.Teori graf

Jawapan: H = 3

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.

Kira

H = (4 − 1)!/2 = 6/2 = 3

Jawapan

H = 3
14.Teori graf

Jawapan: d(F) = 24

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

Setiap baris: bucu yang ditetapkan, jarak muktamadnya, dan jiran yang jaraknya bertambah baik.

A (0): B: 9, C: 4
C (4): E: 16, G: 16
B (9): G: 14
G (14): D: 18
E (16): F: 24
D (18)
F (24)

Laluan terpendek

A → C → E → F
d(F) = 24

Jawapan

d(F) = 24
15.Pangkalan data & SQL

Jawapan: B · Ia boleh menggunakan fungsi agregat untuk menapis kumpulan

Mengapa ini jawapannya

HAVING menapis kumpulan selepas pengagregatan dan boleh merujuk agregat; WHERE tidak boleh.

Jawapan

B · Ia boleh menggunakan fungsi agregat untuk menapis kumpulan
16.Pangkalan data & SQL

Jawapan: B · {A, B, C, D}

Mengapa ini jawapannya

Mulakan dengan A, tambah B (A → B), kemudian C (B → C), kemudian D (C → D); memandangkan A+ mengandungi semua atribut, A ialah kunci.

Jawapan

B · {A, B, C, D}
17.Rangkaian komputer

Jawapan: A · 0–1023

Mengapa ini jawapannya

Port 0–1023 ialah port terkenal untuk perkhidmatan piawai. 1024–49151 ialah port berdaftar dan 49152–65535 ialah port dinamik atau persendirian.

Jawapan

A · 0–1023
18.Rangkaian komputer

Jawapan: D · 1500 bait

Mengapa ini jawapannya

Ethernet standard membawa sehingga 1500 bait muatan; paket IP yang lebih besar mesti dipecahkan atau menggunakan penemuan MTU laluan.

Jawapan

D · 1500 bait
19.Subnet IPv4

Jawapan: H = 62

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

22 = 4 ≥ 4 → b = 2, /26

Hos bagi setiap subnet

26 − 2 = 62

Jawapan

H = 62
20.Subnet IPv4

Jawapan: x = 128

VLSM: setiap LAN mendapat subnet terkecil dengan 2ʰ − 2 ≥ bilangan hosnya, iaitu awalan 32 − h. Memperuntukkan subnet terbesar dahulu memastikan setiap blok sejajar pada gandaan saiznya sendiri, maka alamat rangkaian diperoleh dengan menambah saiz blok.

Saiz blok bagi setiap LAN

B: 58 hos → 26 = 64 (/26)
A: 55 hos → 26 = 64 (/26)
D: 30 hos → 25 = 32 (/27)
C: 14 hos → 24 = 16 (/28)

Peruntukan, yang terbesar dahulu

B: .0 – .63
A: .64 – .127
D: .128 – .159
C: .160 – .175

Jawapan

x = 128

LAN D: 192.168.247.128/27.

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