Dasar-Dasar Ilmu Komputer: paket kilat

Lembar rumus, langkah-langkah metode utama untuk setiap topik, dan 20 soal latihan, dengan pembahasan lengkap di bagian belakang.

Soal baruKembali ke mata kuliah

Di jendela cetak, pilih “Simpan sebagai PDF” untuk menyimpan salinan di perangkat Anda.

1Rumus dan metode

Sistem bilangan

Nilai tempat
biner 2k, oktal 8k, heksadesimal 16k
Ke desimal
Σ dk·bk
Dari desimal
bagi dengan basis, baca sisanya dari bawah ke atas
Heksadesimal ↔ biner
satu digit heksadesimal = 4 bit
Komplemen dua
balik bitnya lalu tambahkan 1

Logika proposisional & pembuktian

Baris tabel kebenaran
2ⁿ
Implikasi
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Negasi implikasi
¬(p → q) ≡ p ∧ ¬q
Bikondisional
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Hukum distributif
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Negasi kuantor
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Metode

  1. Hitung banyaknya variabel yang berbeda: tabel kebenaran memiliki 2ⁿ baris, dimulai dengan semuanya bernilai 1.
  2. Beri setiap subformula kolomnya sendiri dan isi kolom-kolom itu dari dalam ke luar.
  3. Terapkan aturan setiap penghubung: → bernilai 0 hanya untuk 1 → 0, ↔ bernilai 1 jika kedua sisi sama.
  4. Untuk ekuivalensi, bandingkan kolom akhir baris demi baris; untuk suatu argumen, lihat hanya baris yang semua premisnya bernilai 1.
  5. Untuk menegasikan pernyataan berkuantor, pindahkan ¬ ke dalam, tukar ∀ dan ∃, lalu negasikan rumus di dalamnya.

Logika digital: gerbang, peta-K & flip-flop

Gerbang dasar
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Aturan Boolean
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Urutan peta Karnaugh
00, 01, 11, 10 (Gray code)
Kelompok 2ᵏ sel
kehilangan k variabel
Multiplekser 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
Pencacah
n bit: 2ⁿ keadaan; mod-N: n terkecil dengan 2ⁿ ≥ N; fout = fclk/N
Pencacah ripple
fmax = 1/(n·tpd)
Pencacah cincin dan Johnson
n dan 2n keadaan

Metode

  1. Untuk rangkaian, bekerjalah dari masukan ke keluaran satu gerbang demi satu gerbang dan tulis nilai pada setiap kawat, atau tulis ekspresinya dan isi tabel kebenaran.
  2. Untuk penyederhanaan, taruh angka 1 (dan don’t-care sebagai X) ke dalam peta Karnaugh dengan baris dan kolom kode Gray: 00, 01, 11, 10.
  3. Cakup angka 1 dengan kelompok sesedikit dan sebesar mungkin yang berisi 1, 2, 4, 8, atau 16 sel, melingkar melewati tepi; setiap kelompok adalah satu suku hasil kali yang tersusun dari variabel yang tetap konstan. Kelompokkan angka 0 untuk bentuk POS.
  4. Untuk flip-flop dan pencacah, baca masukan pada setiap tepi clock aktif, tulis keadaan setelah setiap tepi, dan ingat bahwa pencacah n bit berputar kembali setelah 2ⁿ keadaan.

Teori bilangan & aritmetika modular

Pembagian dengan sisa
a = q·n + r, 0 ≤ r < n
Euclid
gcd(a, b) = gcd(b, a mod b)
Kelipatan persekutuan terkecil
lcm(a, b) = a·b/gcd(a, b)
Invers
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Kongruensi 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

Metode

  1. Reduksi dulu setiap bilangan modulo n; sisa berada di antara 0 dan n − 1.
  2. Untuk FPB, bagi berulang kali dengan algoritma Euclid; sisa taknol terakhir adalah FPB.
  3. Untuk invers, jalankan algoritma yang diperluas dan ambil koefisien a; tambahkan n jika negatif.
  4. Selesaikan a·x ≡ b dengan mengalikan a⁻¹; gabungkan dua kongruensi dengan menuliskan x = r₁ + m₁k.
  5. Untuk pangkat, tuliskan eksponen dalam biner dan kuadratkan berulang; 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 beraturan
|E| = n·k/2
Pohon dan hutan
|E| = n − 1, |E| = n − c
Daun pohon
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
sirkuit: semua derajat genap; lintasan: tepat 2 derajat ganjil
Sirkuit Hamilton di Kn
(n − 1)!/2
Pembaruan Dijkstra
d(v) = min(d(v), d(u) + w(u, v))
Jalan dengan panjang L
(Mᴸ)ij

Metode

  1. Tuliskan derajat setiap simpul; jumlah derajat sama dengan dua kali banyaknya sisi.
  2. Untuk soal Euler, periksa bahwa graf terhubung dan hitung simpul berderajat ganjil.
  3. Untuk pohon, gunakan n − 1 sisi dan lema jabat tangan.
  4. Untuk Dijkstra, buat tabel jarak sementara dan tetapkan simpul belum tetap dengan jarak terkecil di setiap putaran.
  5. Untuk pohon rentang minimum, urutkan sisi menurut bobot dan lewati setiap sisi yang membentuk siklus (Kruskal), atau tumbuhkan satu pohon dari simpul awal (Prim).

Subnetting IPv4

Host per subnet
2(32 − prefix) − 2 (/31: 2, /32: 1)
Ukuran blok
256 − (mask octet)
Alamat jaringan
IP AND mask
Alamat broadcast
IP OR (NOT mask): semua bit host bernilai 1
Subnet dari n bit pinjaman
2n

2Soal latihan

1.Sistem bilanganSedang
nilai posisi dalam komplemen dua1−12816413211618140211

Pola 8-bit 1111 1101 menyimpan bilangan bulat bertanda dalam komplemen dua. Berapa nilainya N dalam desimal?

1111 11018 bit
N =
2.Sistem bilanganSulit
8 bit1 px256 px256 pxM = ? KiB

Sebuah gambar tak terkompresi berukuran 256 × 256 piksel dengan 8 bit per piksel. Berapa memori M yang dipakainya, dalam KiB (1 KiB = 1024 byte)?

256 × 256 px8 bit/px1 KiB = 1024 B
M = KiB
3.Logika proposisional & pembuktianSedang
pqr(p ∨ ¬q) → rr ∨ ¬q((p ∨ ¬q) → r) ∨ (r ∨ ¬q)111?110?101?100?011?010?001?000?

Pada berapa dari 8 baris tabel kebenarannya ((p ∨ ¬q) → r) ∨ (r ∨ ¬q) bernilai benar? Sebut bilangan ini N.

((p ∨ ¬q) → r) ∨ (r ∨ ¬q)
N =
4.Logika proposisional & pembuktianSulit
pq ∧ ¬p¬p¬q

Premis q → p; q diberikan. Kesimpulan mana yang mengikuti dari premis-premis itu? Klik kesimpulan itu.

q → pq
  1. 1p
  2. 2q ∧ ¬p
  3. 3¬p
  4. 4¬q
5.Logika digital: gerbang, peta-K & flip-flopSedang
ABCD000111100001111010011302140507161120131150141809111010

Pakai peta Karnaugh untuk mencari bentuk hasil kali dari jumlah (POS) minimal dari F(A, B, C, D) = Σm(0, 3, 4, 6, 8, 11, 12, 15). Berapa suku jumlah (faktor) N yang dimilikinya?

F(A, B, C, D) = Σm(0, 3, 4, 6, 8, 11, 12, 15)
N =
6.Logika digital: gerbang, peta-K & flip-flopSulit
FFQ0​Q0​FFQ1​Q1​FFQ2​Q2​FFQ3​Q3​CLKMOD-12

Clock 5 kHz menggerakkan pencacah mod-12. Carilah frekuensi fout dari keluaran paling signifikannya, yang menyelesaikan satu siklus per siklus pencacahan.

fclk = 5 kHzN = 12
fout = kHz
7.Teori bilangan & aritmetika modularSedang

Carilah bilangan bulat positif terkecil x dengan x ≡ 1 (mod 3) dan x ≡ 2 (mod 4).

x ≡ 1 (mod 3)x ≡ 2 (mod 4)
x =
8.Teori bilangan & aritmetika modularSulit
852c = me​ mod n?m = cd​ mod nm(n, e) = (1147, 13)d

Enkripsikan pesan m = 852 dengan kunci publik RSA (n, e) = (1147, 13). Carilah teks sandi c.

n = 1147e = 13m = 852
c =
9.Algoritma & kompleksitasSedang

Berapa kompleksitas waktu menghitung bilangan Fibonacci ke-n dengan tabel bottom-up?

  1. AO(n)
  2. BO(log n)
  3. CO(n²)
  4. DO(2ⁿ)
10.Algoritma & kompleksitasSulit

Dua hal apa yang harus ditunjukkan untuk membuktikan bahwa masalah keputusan X adalah NP-complete?

  1. AX berada di P, dan X dapat direduksi ke SAT
  2. BX dapat direduksi ke masalah di P, dan X berada di NP
  3. CX tidak memiliki algoritma polinomial, dan X decidable
  4. DX berada di NP, dan masalah NP-complete yang sudah dikenal dapat direduksi ke X dalam waktu polinomial
11.Struktur dataSedang

Syarat keseimbangan apa yang dijaga AVL tree di setiap node?

  1. ATinggi subpohon kiri dan kanan berbeda paling banyak 1
  2. BKedua subpohon dari setiap node berisi jumlah node yang persis sama
  3. CSemua daun berada pada kedalaman yang persis sama
  4. DSetiap node diberi warna merah atau hitam
12.Struktur dataSulit

Sebuah dynamic array berlipat dua ketika penuh. Mengapa banyak implementasi hanya mengecilkannya ketika terisi seperempat, bukan separuh?

  1. AKarena membagi dua pada separuh akan menghilangkan elemen
  2. BUntuk menjaga array tetap terurut
  3. CUntuk menghindari perubahan ukuran berulang ketika push dan pop bergantian di dekat batas
  4. DKarena alokator memori hanya dapat melepaskan memori dalam kelipatan seperempat blok
13.Teori grafSedang

Ada berapa sirkuit Hamilton H yang berbeda pada graf lengkap K8? Sirkuit yang hanya berbeda dalam simpul awal atau arahnya dianggap sama.

K8
H =
14.Teori grafSulit
4910111221563ABCDEFG

Pakai algoritma Dijkstra untuk mencari panjang d(F) lintasan terpendek dari A ke F pada graf berbobot.

awal: Aakhir: F
d(F) =
15.Basis data & SQLSedang

Apa yang dikembalikan oleh SELECT COALESCE(phone, 'unknown') FROM customers untuk pelanggan yang phone-nya NULL?

  1. A'unknown'
  2. BNULL
  3. CString kosong
  4. DError
16.Basis data & SQLSulit

Transaksi T1 mengunci baris A dan menunggu baris B, sementara T2 mengunci baris B dan menunggu baris A. Apa yang dilakukan DBMS pada umumnya?

  1. AMendeteksi deadlock dan membatalkan satu transaksi sebagai korban
  2. BMenggabungkan kedua transaksi menjadi satu
  3. CMembiarkan kedua transaksi menunggu sampai salah satunya di-commit secara normal
  4. DMelakukan commit kedua transaksi sekaligus
17.Jaringan komputerSedang

Apa yang ditentukan oleh record MX dalam DNS?

  1. ANama alias untuk host lain
  2. BServer surat yang menerima email untuk suatu domain
  3. CAlamat IPv4 server web
  4. DName server untuk suatu zona
18.Jaringan komputerSulit

Mengapa IPv6 tidak memerlukan NAT untuk mengatasi kekurangan alamat?

  1. AIPv6 mengenkripsi semua alamat
  2. BIPv6 hanya bekerja di jaringan lokal, sehingga alamatnya tidak perlu dibagikan secara global
  3. CIPv6 tidak menggunakan alamat
  4. DRuang alamat 128 bit-nya cukup besar untuk memberikan alamat global kepada setiap perangkat
19.Subnetting IPv4Sedang
255.255.255.24011111111111111111111111111110000bit jaringanbit host

Sebuah subnet memakai mask 255.255.255.240. Berapa alamat host yang dapat dipakai H?

255.255.255.240
H =
20.Subnetting IPv4Sulit
oktet ketiga 69 … 70012816403201608140211samaberbeda

Sebuah router memiliki rute ke jaringan-jaringan berikut: 10.103.69.0/24, 10.103.70.0/24. Berapa panjang prefiks terpanjang p dari satu rute ringkasan yang mencakup semuanya?

10.103.69.0/24 … 10.103.70.0/24
p =

3Larutan

1.Sistem bilangan

Jawaban: N = −3

Sistem bilangan posisional: setiap digit bernilai digit itu dikali pangkat dari basis. Dalam biner, posisinya bernilai 1, 2, 4, 8, 16, …; dalam heksadesimal 1, 16, 256, …, dengan A–F mewakili 10–15. Dalam komplemen dua 8-bit, bit paling kiri bernilai −128, bukan +128; begitulah bilangan negatif disimpan.

Jumlahkan nilai posisi

Bit lainnya tetap bernilai positif seperti biasa.

−128 + 64 + 32 + 16 + 8 + 4 + 1 = −3

Jawaban

N = −3
2.Sistem bilangan

Jawaban: M = 64 KiB

Sistem bilangan posisional: setiap digit bernilai digit itu dikali pangkat dari basis. Dalam biner, posisinya bernilai 1, 2, 4, 8, 16, …; dalam heksadesimal 1, 16, 256, …, dengan A–F mewakili 10–15. Dalam komplemen dua 8-bit, bit paling kiri bernilai −128, bukan +128; begitulah bilangan negatif disimpan.

Bit dan byte

256·256·8 = 524288 bit = 65536 B

Ubah ke KiB

65536/1024 = 64 KiB

Jawaban

M = 64 KiB
3.Logika proposisional & pembuktian

Jawaban: N = 7

Tabel kebenaran: rumus dengan n variabel berbeda memiliki 2ⁿ baris, satu untuk setiap kombinasi nilai kebenaran (1 = benar, 0 = salah). Bekerjalah dari dalam ke luar dan beri setiap subformula kolomnya sendiri. ¬a membalik nilainya; a ∧ b bernilai 1 hanya jika keduanya 1; a ∨ b bernilai 0 hanya jika keduanya 0; a → b bernilai 0 hanya jika a = 1 dan b = 0; a ↔ b bernilai 1 jika kedua sisi sama.

Tabel kebenaran baris demi baris

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

Hitung baris bernilai 1

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

Jawaban

N = 7
4.Logika proposisional & pembuktian

Jawaban: p

Kuantor dan argumen: ¬∀x P(x) ≡ ∃x ¬P(x) dan ¬∃x P(x) ≡ ∀x ¬P(x). Pindahkan negasi ke dalam, tukar setiap kuantor yang dilewatinya, dan negasikan rumus di dalamnya dengan hukum proposisional, seperti ¬(a → b) ≡ a ∧ ¬b. Sebuah argumen valid jika kesimpulannya bernilai 1 pada setiap baris yang semua premisnya bernilai 1. Satu baris dengan premis benar dan kesimpulan salah adalah contoh penyangkal dan menunjukkan bahwa argumen itu tidak valid.

Baris dengan semua premis benar

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

Kesimpulan

p (modus ponens)

Jawaban

p
5.Logika digital: gerbang, peta-K & flip-flop

Jawaban: N = 4

Peta Karnaugh: sel-sel diurutkan dalam kode Gray (00, 01, 11, 10), sehingga sel bertetangga, termasuk yang melewati tepi, berbeda tepat pada satu variabel. Kelompokkan angka 1 dalam persegi panjang berisi 1, 2, 4, 8, atau 16 sel, sebesar mungkin dan sesedikit mungkin, sampai setiap angka 1 tercakup. Setiap kelompok adalah satu suku hasil kali: variabel yang tetap konstan di dalamnya. Kelompok 2ᵏ sel kehilangan k variabel. Don’t-care (X) boleh dipakai untuk memperbesar kelompok tetapi tidak harus dicakup. Mengelompokkan angka 0 sebagai gantinya menghasilkan bentuk POS minimal.

ABCD000111100001111010011302140507161120131150141809111010

Kelompokkan angka 0

Setiap kelompok adalah persegi panjang berisi 2ᵏ sel; sel di tepi bertetangga dengan sel di tepi seberangnya.

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

Bentuk POS minimal

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

Jawaban

N = 4
6.Logika digital: gerbang, peta-K & flip-flop

Jawaban: fout = 0,4167 kHz

Flip-flop dan pencacah: flip-flop hanya berubah pada tepi clock aktif. D menyalin masukannya (Q⁺ = D); T berbalik jika T = 1; JK bertahan untuk 00, reset untuk 01, set untuk 10, dan berbalik untuk 11. Pencacah biner n bit memiliki 2ⁿ keadaan dan menghitung modulo 2ⁿ; pencacah mod-N berurutan 0, 1, …, N − 1 lalu kembali ke 0, dan memerlukan flip-flop sebanyak n terkecil dengan 2ⁿ ≥ N. Setiap tahap pencacah ripple membagi dua frekuensi, sehingga keluaran terakhir pencacah mod-N berjalan pada fclk/N. Pencacah Johnson dari n flip-flop memiliki 2n keadaan, pencacah cincin n.

Pembagian frekuensi

fout = 5 kHz / 12 = 0,4167 kHz

Jawaban

fout = 0,4167 kHz
7.Teori bilangan & aritmetika modular

Jawaban: x = 10

Invers dan kongruensi: a memiliki invers modulo n tepat ketika FPB(a, n) = 1. Algoritma Euclid yang diperluas menuliskan 1 = s·n + t·a, dan kemudian a⁻¹ ≡ t (mod n). Kongruensi a·x ≡ b (mod n) dengan FPB(a, n) = 1 memiliki penyelesaian x ≡ a⁻¹·b. Dua kongruensi x ≡ r₁ (mod m₁) dan x ≡ r₂ (mod m₂) dengan modulus saling prima memiliki satu penyelesaian modulo m₁·m₂ (teorema sisa Cina). φ(n) Euler menghitung bilangan dari 1 sampai n yang saling prima dengan n: φ(n) = n·∏(1 − 1/p).

Kongruensi pertama

x = 1 + 3k

Kongruensi kedua

1 + 3k ≡ 2 (mod 4) → 3k ≡ 1 (mod 4)
k ≡ 3·1 ≡ 3 (mod 4)

Hasil

x = 1 + 3·3 = 10
x = 10
periksa: 10 mod 3 = 1, 10 mod 4 = 2

Jawaban

x = 10
8.Teori bilangan & aritmetika modular

Jawaban: c = 926

Pangkat modular dan RSA: hitung aᵏ mod n dengan pengkuadratan berulang: tulis k dalam biner, kuadratkan, reduksi setelah setiap langkah, dan kalikan pangkat yang bitnya 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) untuk bilangan prima p yang tidak membagi a, sehingga eksponen dapat direduksi modulo p − 1. RSA: pilih bilangan prima p dan q, n = p·q dan φ(n) = (p − 1)(q − 1); eksponen publik e saling prima dengan φ(n), dan eksponen privat adalah d = e⁻¹ mod φ(n). Enkripsi dengan c = mᵉ mod n dan dekripsi dengan m = cᵈ mod n.

Pengkuadratan berulang

13 = 8 + 4 + 1
8521 ≡ 852 (mod 1147)
8522 ≡ 1000 (mod 1147)
8524 ≡ 963 (mod 1147)
8528 ≡ 593 (mod 1147)
85213 ≡ 852·963·593 ≡ 926 (mod 1147)

Teks sandi

c = 926

Jawaban

c = 926
9.Algoritma & kompleksitas

Jawaban: A · O(n)

Mengapa ini jawabannya

Mengisi tabel dari 0 sampai n memerlukan satu penjumlahan per entri, sehingga kerjanya linear, bukan eksponensial.

Jawaban

A · O(n)
10.Algoritma & kompleksitas

Jawaban: D · X berada di NP, dan masalah NP-complete yang sudah dikenal dapat direduksi ke X dalam waktu polinomial

Mengapa ini jawabannya

Keanggotaan di NP menunjukkan X tidak lebih sulit daripada NP; reduksi dari masalah NP-complete yang dikenal menunjukkan X setidaknya sesulit seluruh NP.

Jawaban

D · X berada di NP, dan masalah NP-complete yang sudah dikenal dapat direduksi ke X dalam waktu polinomial
11.Struktur data

Jawaban: A · Tinggi subpohon kiri dan kanan berbeda paling banyak 1

Mengapa ini jawabannya

Balance factor (tinggi kiri − tinggi kanan) harus −1, 0, atau 1; rotasi memulihkannya setelah penyisipan dan penghapusan.

Jawaban

A · Tinggi subpohon kiri dan kanan berbeda paling banyak 1
12.Struktur data

Jawaban: C · Untuk menghindari perubahan ukuran berulang ketika push dan pop bergantian di dekat batas

Mengapa ini jawabannya

Mengecilkan pada separuh dapat memicu perubahan ukuran pada setiap operasi dalam urutan seperti itu; jarak antara 1/4 dan penuh menjaga biaya amortisasi O(1).

Jawaban

C · Untuk menghindari perubahan ukuran berulang ketika push dan pop bergantian di dekat batas
13.Teori graf

Jawaban: H = 2520

Euler, Hamilton, dan pohon: graf terhubung memiliki sirkuit Euler (setiap sisi sekali, kembali ke awal) jika setiap simpul berderajat genap, dan lintasan Euler yang bukan sirkuit jika tepat dua simpul berderajat ganjil; lintasan itu berjalan dari satu simpul ganjil ke simpul ganjil lainnya. Sirkuit Hamilton mengunjungi setiap simpul sekali; Kn memiliki (n − 1)!/2 sirkuit seperti itu. Pohon dengan n simpul memiliki n − 1 sisi, dan graf terhubung dengan m sisi masih memiliki pohon rentang setelah m − n + 1 sisi dihapus.

Hitung

H = (8 − 1)!/2 = 5040/2 = 2520

Jawaban

H = 2520
14.Teori graf

Jawaban: d(F) = 17

Lintasan terpendek dan pohon rentang: algoritma Dijkstra menetapkan satu simpul per putaran: simpul belum tetap dengan jarak sementara terkecil. Jaraknya lalu final, dan setiap tetangga v mendapat d(v) = min(d(v), d(u) + w(u, v)). Algoritma Kruskal membangun pohon rentang minimum dengan mengambil sisi dari yang ringan ke berat dan melewati sisi yang akan membentuk siklus; algoritma Prim menumbuhkan satu pohon dari simpul awal dengan selalu menambahkan sisi teringan yang keluar dari pohon. Pohon rentang dengan n simpul memiliki n − 1 sisi.

Dijkstra putaran demi putaran

Setiap baris: simpul yang ditetapkan, jarak finalnya, dan tetangga yang jaraknya membaik.

A (0): B: 4, C: 9
B (4): D: 15, G: 10
C (9)
G (10): E: 13
E (13): F: 28
D (15): F: 17
F (17)

Lintasan terpendek

A → B → D → F
d(F) = 17

Jawaban

d(F) = 17
15.Basis data & SQL

Jawaban: A · 'unknown'

Mengapa ini jawabannya

COALESCE memeriksa argumennya dari kiri ke kanan dan mengembalikan yang pertama tidak NULL, di sini 'unknown'.

Jawaban

A · 'unknown'
16.Basis data & SQL

Jawaban: A · Mendeteksi deadlock dan membatalkan satu transaksi sebagai korban

Mengapa ini jawabannya

Siklus dalam wait-for graph adalah deadlock; DBMS melakukan rollback satu transaksi agar yang lain dapat berlanjut, dan transaksi korban dapat dicoba ulang.

Jawaban

A · Mendeteksi deadlock dan membatalkan satu transaksi sebagai korban
17.Jaringan komputer

Jawaban: B · Server surat yang menerima email untuk suatu domain

Mengapa ini jawabannya

Record MX (mail exchange) mencantumkan server surat beserta prioritasnya, sehingga server pengirim tahu ke mana harus mengirim surat untuk domain itu.

Jawaban

B · Server surat yang menerima email untuk suatu domain
18.Jaringan komputer

Jawaban: D · Ruang alamat 128 bit-nya cukup besar untuk memberikan alamat global kepada setiap perangkat

Mengapa ini jawabannya

IPv6 memiliki sekitar 3,4 × 10³⁸ alamat, sehingga kelangkaan yang mendorong penggunaan NAT pada IPv4 hilang; firewall tetap menyediakan keamanan.

Jawaban

D · Ruang alamat 128 bit-nya cukup besar untuk memberikan alamat global kepada setiap perangkat
19.Subnetting IPv4

Jawaban: H = 14

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 prefiks

255.255.255.240 = /28

Host yang dapat dipakai

24 − 2 = 14

Jawaban

H = 14
20.Subnetting IPv4

Jawaban: p = 22

Peringkasan rute: rute ringkasan a.b.c.0/p mencakup semua jaringan yang p bit pertamanya sama. Tulis oktet yang berbeda dari jaringan pertama dan terakhir dalam biner; jumlah bit depan yang sama, ditambah bit oktet-oktet sebelumnya, adalah prefiks ringkasan terpanjang.

Bandingkan bitnya

69 = 01000101
70 = 01000110
bit depan yang sama: 6

Panjang prefiks

p = 16 + 6 = 22

Jawaban

p = /22

Rute ringkasan: 10.103.68.0/22 (rute ini juga mencakup 2 jaringan yang tidak ada dalam daftar).

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