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 −72 dalam pelengkap dua 8-bit. Dibaca sebagai nombor tanpa tanda, apakah nilai corak U?

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

Tetapkan bit kepada hasil 8-bit bagi 0111 0001 >> 1. Apakah nilai hasil R dalam perpuluhan?

0111 0001>> 1
R =
3.Logik proposisi & pembuktianSederhana
pqr¬r(p → q) ∧ ¬r((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r)111?110?101?100?011?010?001?000?

Dalam berapa daripada 8 baris jadual kebenarannya ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) benar? Panggil nombor ini N.

((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r)
N =
4.Logik proposisi & pembuktianSukar
r¬qqq ∧ ¬r

Premis (p ∧ q) → r; p; ¬r diberikan. Kesimpulan manakah yang terhasil daripadanya? Klik kesimpulan itu.

(p ∧ q) → rp¬r
  1. 1r
  2. 2¬q
  3. 3q
  4. 4q ∧ ¬r
5.Logik digital: get, peta K & flip-flopSederhana
MUX1I0​C′I1​C′I2​0I3​ABS1​S0​F

Multipleks 4-ke-1 mempunyai input pilih S₁ = A dan S₀ = B, dan input datanya diikat kepada I₀ = 1, I₁ = C′, I₂ = C′, I₃ = 0. Bagi berapa daripada 8 gabungan A, B dan C output F = 1? Cari N.

I₀ = 1I₁ = C′I₂ = C′I₃ = 0
N =
6.Logik digital: get, peta K & flip-flopSukar
ABCD00011110000111100001031204150706112013115114X819X11010

Cari bentuk SOP minimum bagi F(A, B, C, D) = Σm(2, 5, 9, 12, 14, 15) + d(8, 11), dengan d menandakan keadaan tidak peduli. Berapa banyak literal L yang terkandung dalamnya?

F(A, B, C, D) = Σm(2, 5, 9, 12, 14, 15) + d(8, 11)
L =
7.Teori nombor & aritmetik moduloSederhana

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

a = 10n = 13
10−1 mod 13 =
8.Teori nombor & aritmetik moduloSukar

Selesaikan 22x ≡ 80 (mod 82). Beri penyelesaian positif terkecil x.

22x ≡ 80 (mod 82)
x =
9.Algoritma & kerumitanSederhana

Apakah masa larian isihan radiks LSD pada n integer dengan d digit dalam asas k?

  1. AO(n log n)
  2. BO(d(n + k))
  3. CO(dn log k)
  4. DO(n²)
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

Bagaimanakah elemen baharu disisip ke dalam timbunan binari?

  1. ABina semula seluruh timbunan dari awal
  2. BLetakkan di hujung tatasusunan dan gerakkannya ke atas selagi ia melanggar sifat timbunan
  3. CLetakkan di akar dan gerakkannya ke bawah
  4. DSisip di kedudukan tersusunnya dengan menganjak semua elemen yang lebih besar satu tempat ke kanan
12.Struktur dataSukar

Anda mesti menyimpan k nilai terkecil daripada aliran n nombor menggunakan memori O(k). Pendekatan manakah yang berfungsi dalam masa O(n log k)?

  1. ATimbunan min yang memegang kesemua n nilai, yang daripadanya k nilai terkecil dikeluarkan pada akhirnya
  2. BTimbunan maks bersaiz k, menggantikan akarnya apabila nilai yang lebih kecil tiba
  3. CTatasusunan tersusun bagi kesemua n nilai
  4. DBaris gilir FIFO bagi k nilai terakhir
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| = 6
  1. 1Litar Euler
  2. 2Laluan Euler, tiada litar
  3. 3tiada kedua-duanya
14.Teori grafSukar
18179681311115197ABCDEFG

Cari jumlah berat W pokok rentang minimum bagi graf berpemberat itu.

|V| = 7|E| = 11
W =
15.Pangkalan data & SQLSederhana

Apakah suntikan SQL (SQL injection)?

  1. ASerangan di mana input pengguna mengubah struktur pertanyaan SQL
  2. BTeknik untuk menyisipkan banyak baris dengan cepat menggunakan satu penyataan INSERT
  3. CTeknik sandaran pangkalan data
  4. DCara untuk menambah indeks
16.Pangkalan data & SQLSukar

Apakah indeks litupan (covering index) untuk sesuatu pertanyaan?

  1. AIndeks yang mengandungi semua lajur yang diperlukan pertanyaan, supaya jadual itu sendiri tidak perlu dibaca
  2. BIndeks pada kunci utama sahaja
  3. CIndeks yang meliputi setiap lajur setiap jadual
  4. DIndeks yang dibina semula setiap malam
17.Rangkaian komputerSederhana

Apakah perbezaan utama antara kaedah HTTP GET dan POST?

  1. AGET memadam sumber, POST membacanya daripada pangkalan data pelayan
  2. BGET disulitkan, POST tidak
  3. CGET menggunakan UDP, POST menggunakan TCP
  4. DGET mendapatkan sumber, POST menghantar data dalam badan permintaan
18.Rangkaian komputerSukar

Fasa "permulaan perlahan" (slow start) kawalan kesesakan TCP:

  1. ADigunakan oleh UDP sahaja
  2. BMengekalkan tetingkap tetap pada satu segmen
  3. CMengurangkan separuh tetingkap kesesakan setiap perjalanan pergi balik sehingga kehilangan paket dikesan
  4. DMeningkatkan tetingkap kesesakan secara eksponen sehingga ambang atau kehilangan
19.Subnet IPv4Sederhana
255.255.248.011111111111111111111100000000000bit rangkaianbit hos

Satu subnet menggunakan topeng 255.255.248.0. Berapakah bilangan alamat hos H yang boleh digunakan?

255.255.248.0
H =
20.Subnet IPv4Sukar
oktet terakhir = 87012816403211608141211rangkaianhos

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

10.20.64.87/30
x =

3Larutan

1.Sistem nombor

Jawapan: U = 184

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

72 = 0100 1000
disongsangkan: 1011 0111
+1 → 1011 1000

Baca sebagai tanpa tanda

1011 1000₂ = 256 − 72 = 184

Jawapan

U = 184
2.Sistem nombor

Jawapan: R = 56

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 kanan sebanyak 1 menggerakkan setiap bit 1 tempat ke kanan; bit yang jatuh dari hujung kanan hilang dan sifar masuk di sebelah kiri.

0111 0001 >> 1
= 0011 1000

Nilai hasil

0011 1000₂ = 56

Jawapan

R = 56
3.Logik proposisi & pembuktian

Jawapan: N = 1

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

p = 1, q = 1, r = 1: ¬q = 0, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 1, p → q = 1, ¬r = 0, (p → q) ∧ ¬r = 0, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 1, q = 1, r = 0: ¬q = 0, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 0, p → q = 1, ¬r = 1, (p → q) ∧ ¬r = 1, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 1, q = 0, r = 1: ¬q = 1, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 1, p → q = 0, ¬r = 0, (p → q) ∧ ¬r = 0, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 1, q = 0, r = 0: ¬q = 1, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 0, p → q = 0, ¬r = 1, (p → q) ∧ ¬r = 0, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 0, q = 1, r = 1: ¬q = 0, ¬q ∨ p = 0, (¬q ∨ p) ↔ r = 0, p → q = 1, ¬r = 0, (p → q) ∧ ¬r = 0, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 0, q = 1, r = 0: ¬q = 0, ¬q ∨ p = 0, (¬q ∨ p) ↔ r = 1, p → q = 1, ¬r = 1, (p → q) ∧ ¬r = 1, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 1
p = 0, q = 0, r = 1: ¬q = 1, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 1, p → q = 1, ¬r = 0, (p → q) ∧ ¬r = 0, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0
p = 0, q = 0, r = 0: ¬q = 1, ¬q ∨ p = 1, (¬q ∨ p) ↔ r = 0, p → q = 1, ¬r = 1, (p → q) ∧ ¬r = 1, ((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r) = 0

Kira baris dengan nilai 1

((¬q ∨ p) ↔ r) ∧ ((p → q) ∧ ¬r): 0, 0, 0, 0, 0, 1, 0, 0
N = 1

Jawapan

N = 1
4.Logik proposisi & pembuktian

Jawapan: ¬q

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.

Baris dengan semua premis benar

p = 1, q = 0, r = 0: r = 0, ¬q = 1, q = 0, q ∧ ¬r = 0

Kesimpulan

¬q (modus tollens dengan konjungsi)

Jawapan

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

Jawapan: N = 4

Multipleks: multipleks 2ⁿ-ke-1 menyalurkan satu input datanya ke output; talian pilih, dibaca sebagai nombor perduaan, menentukan yang mana satu. Untuk MUX 4-ke-1 dengan pilih S₁S₀ = AB, F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Mengikat input data kepada 0, 1, C atau C′ membolehkan MUX menghasilkan sebarang fungsi bagi A, B dan C, yang merupakan cara lazim untuk membina logik dengan satu cip.

Ungkapan output

F = A′B′ + A′BC′ + AB′C′

Baris dengan F = 1

ABC = 000, 001, 010, 100
N = 4

Jawapan

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

Jawapan: L = 17

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.

AC′D′, ACD, AB′D, ABD′, AB′C′, ABC, A′B′CD′, A′BC′D
ABCD00011110000111100001031204150706112013115114X819X11010

Liputan minimum

F = ACD + AB′D + ABD′ + A′B′CD′ + A′BC′D
L = 17

Jawapan

L = 17

Terdapat pengumpulan lain yang sama saiz; ia mempunyai bilangan sebutan dan literal yang sama.

7.Teori nombor & aritmetik modulo

Jawapan: 10−1 mod 13 = 4

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·10 (mod 13).

r = 13, t = 0
r = 10, q = 1, t = 1
r = 3, q = 3, t = −1
r = 1, q = 3, t = 4

Songsangan

1 ≡ 4·10 (mod 13)
x = 4
semakan: 10·4 = 40 = 3·13 + 1

Jawapan

10−1 mod 13 = 4
8.Teori nombor & aritmetik modulo

Jawapan: x = 26

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

Bahagi dengan gcd

gcd(22, 82) = 2
11x ≡ 40 (mod 41)

Selesaikan kongruen yang telah dipermudah

11−1 ≡ 15 (mod 41) → x ≡ 26 (mod 41)

Penyelesaian modulo 82

x ∈ {26, 67}
x = 26

Jawapan

x = 26
9.Algoritma & kerumitan

Jawapan: B · O(d(n + k))

Mengapa ini jawapannya

Setiap satu daripada d pas ialah isihan kiraan berkos O(n + k), jadi untuk d dan k tetap jumlahnya linear dalam n.

Jawapan

B · O(d(n + k))
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: B · Letakkan di hujung tatasusunan dan gerakkannya ke atas selagi ia melanggar sifat timbunan

Mengapa ini jawapannya

Menambah di hujung mengekalkan pokok lengkap; menukar dengan induk memulihkan susunan dalam O(log n) langkah.

Jawapan

B · Letakkan di hujung tatasusunan dan gerakkannya ke atas selagi ia melanggar sifat timbunan
12.Struktur data

Jawapan: B · Timbunan maks bersaiz k, menggantikan akarnya apabila nilai yang lebih kecil tiba

Mengapa ini jawapannya

Akar timbunan maks ialah nilai tersimpan terbesar; sebarang nilai baharu yang lebih kecil menggantikannya dalam O(log k), jadi timbunan sentiasa memegang k nilai terkecil setakat ini.

Jawapan

B · Timbunan maks bersaiz k, menggantikan akarnya apabila nilai yang lebih kecil tiba
13.Teori graf

Jawapan: tiada kedua-duanya

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) = 3, deg(D) = 1, deg(E) = 3

Bucu ganjil

B, C, D, E → 4
tiada kedua-duanya

Jawapan

tiada kedua-duanya
14.Teori graf

Jawapan: W = 50

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

GB (1): ambil
CE (6): ambil
GE (7): ambil
DE (8): ambil
BD (9): langkau, menutup kitaran
EF (11): ambil
DF (13): langkau, menutup kitaran
GC (15): langkau, menutup kitaran
AC (17): ambil

Jumlah berat

W = 1 + 6 + 7 + 8 + 11 + 17 = 50

Jawapan

W = 50
15.Pangkalan data & SQL

Jawapan: A · Serangan di mana input pengguna mengubah struktur pertanyaan SQL

Mengapa ini jawapannya

Apabila input pengguna digabungkan ke dalam SQL, penyerang boleh menyuntik arahan. Penyataan tersedia dengan parameter memisahkan data daripada kod.

Jawapan

A · Serangan di mana input pengguna mengubah struktur pertanyaan SQL
16.Pangkalan data & SQL

Jawapan: A · Indeks yang mengandungi semua lajur yang diperlukan pertanyaan, supaya jadual itu sendiri tidak perlu dibaca

Mengapa ini jawapannya

Jika semua lajur yang dirujuk ada dalam indeks, DBMS boleh melakukan imbasan indeks sahaja dan melangkau mengambil baris jadual, yang menjimatkan I/O.

Jawapan

A · Indeks yang mengandungi semua lajur yang diperlukan pertanyaan, supaya jadual itu sendiri tidak perlu dibaca
17.Rangkaian komputer

Jawapan: D · GET mendapatkan sumber, POST menghantar data dalam badan permintaan

Mengapa ini jawapannya

GET meminta sumber dan tidak patut mengubah keadaan pelayan. POST menghantar data, seperti borang, dalam badan untuk diproses oleh pelayan.

Jawapan

D · GET mendapatkan sumber, POST menghantar data dalam badan permintaan
18.Rangkaian komputer

Jawapan: D · Meningkatkan tetingkap kesesakan secara eksponen sehingga ambang atau kehilangan

Mengapa ini jawapannya

Slow start menaikkan tetingkap kesesakan secara eksponen; selepas ambang, pengelakan kesesakan menaikkannya secara linear, dan kehilangan mengurangkannya.

Jawapan

D · Meningkatkan tetingkap kesesakan secara eksponen sehingga ambang atau kehilangan
19.Subnet IPv4

Jawapan: H = 2046

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

Panjang awalan

255.255.248.0 = /21

Hos boleh guna

211 − 2 = 2046

Jawapan

H = 2046
20.Subnet IPv4

Jawapan: x = 87

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: ⌊87/4⌋·4 = 84
siaran: 84 + 4 − 1 = 87
hos boleh guna: 85 … 86

Jawapan

x = 87

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