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

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

1000 00008 bit
N =
2.Sistem bilanganSulit
16 bit1 px800 px600 pxM = ? KiB

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

800 × 600 px16 bit/px1 KiB = 1024 B
M = KiB
3.Logika proposisional & pembuktianSedang
¬c ∨ a¬c → ¬aa → c¬c ∧ a

Rumus mana yang ekuivalen secara logis dengan c → a? Klik rumus itu.

c → a
  1. 1¬c ∨ a
  2. 2¬c → ¬a
  3. 3a → c
  4. 4¬c ∧ a
4.Logika proposisional & pembuktianSulit
∃x ∃y (R(x, y) ∧ ¬R(y, x))∀x ∀y (R(x, y) ∧ ¬R(y, x))∃x ∃y (¬R(x, y) ∧ ¬R(y, x))∃x ∃y (R(x, y) → ¬R(y, x))

Pernyataan mana yang ekuivalen dengan ¬∀x ∀y (R(x, y) → R(y, x)), dengan negasi dipindahkan sampai ke dalam? Klik pernyataan itu.

¬∀x ∀y (R(x, y) → R(y, x))
  1. 1∃x ∃y (R(x, y) ∧ ¬R(y, x))
  2. 2∀x ∀y (R(x, y) ∧ ¬R(y, x))
  3. 3∃x ∃y (¬R(x, y) ∧ ¬R(y, x))
  4. 4∃x ∃y (R(x, y) → ¬R(y, x))
5.Logika digital: gerbang, peta-K & flip-flopSedang
ABCD000111100001111010111312041507060120131151141819111010

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

F(A, B, C, D) = Σm(0, 1, 2, 3, 5, 8, 9, 11, 14, 15)
N =
6.Logika digital: gerbang, peta-K & flip-flopSulit
FFQ0​Q0​CLKMOD-2

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

fclk = 1 kHzN = 2
fout = kHz
7.Teori bilangan & aritmetika modularSedang

Carilah invers 3 modulo 14: bilangan x dengan 0 < x < 14 dan 3·x ≡ 1 (mod 14).

a = 3n = 14
3−1 mod 14 =
8.Teori bilangan & aritmetika modularSulit
mc = me​ mod n136m = cd​ mod n?(n, e) = (259, 5)d

Sebuah kunci RSA memakai p = 7, q = 37, dan e = 5. Dekripsikan teks sandi c = 136: carilah pesan m.

p = 7q = 37e = 5c = 136
m =
9.Algoritma & kompleksitasSedang

Anda mengurutkan array berisi n elemen sekali, lalu menjawab k kueri keanggotaan dengan binary search. Berapa total biayanya?

  1. AO(n + k)
  2. BO(nk)
  3. CO(n log n + k log n)
  4. DO(k n log n)
10.Algoritma & kompleksitasSulit

Pernyataan mana tentang memilih elemen terkecil ke-k dari array tidak terurut yang benar?

  1. AQuickselect berjalan dalam O(n) yang diharapkan, dan median-of-medians menjamin O(n) pada kasus terburuk
  2. BQuickselect berjalan dalam O(log n) pada kasus terburuk, karena hanya berekursi ke satu sisi pivot
  3. CSeleksi selalu memerlukan Ω(n log n) karena memerlukan pengurutan
  4. DSeleksi hanya mungkin dilakukan dalam O(n²)
11.Struktur dataSedang

Struktur data apa yang dipakai untuk memeriksa apakah tanda kurung dalam "{[()]}" seimbang?

  1. ABinary search tree
  2. BHash table
  3. CQueue
  4. DStack
12.Struktur dataSulit

Fenwick tree (binary indexed tree) atas array berisi n bilangan mendukung operasi apa dalam O(log n)?

  1. AMenyisipkan elemen di posisi mana pun
  2. BMencari median dalam O(1)
  3. CMengurutkan array dan binary search
  4. DKueri prefix sum dan pembaruan satu elemen
13.Teori grafSedang
ABCDEFGSirkuit EulerLintasan Euler, bukan sirkuitbukan keduanya

Apakah graf terhubung ini memiliki sirkuit Euler, lintasan Euler yang bukan sirkuit, atau bukan keduanya? Klik jawaban Anda.

|V| = 7|E| = 12
  1. 1Sirkuit Euler
  2. 2Lintasan Euler, bukan sirkuit
  3. 3bukan keduanya
14.Teori grafSulit
371320161551411ABCDEF

Carilah total bobot W pohon rentang minimum dari graf berbobot ini.

|V| = 6|E| = 9
W =
15.Basis data & SQLSedang

LEFT JOIN mengembalikan:

  1. AHanya semua baris dari tabel kanan
  2. BSemua baris dari tabel kiri dan baris yang cocok dari tabel kanan, dengan NULL jika tidak ada kecocokan
  3. CHanya baris yang cocok dari kedua tabel
  4. DBaris yang tidak cocok di kedua tabel
16.Basis data & SQLSulit

Two-phase locking (2PL) menjamin:

  1. AJadwal yang conflict-serializable
  2. BBahwa transaksi tidak pernah menunggu
  3. CBahwa deadlock tidak akan pernah terjadi
  4. DBahwa tidak diperlukan lock
17.Jaringan komputerSedang

Apa tujuan three-way handshake pada TCP?

  1. AMenutup koneksi dengan cepat
  2. BMengenkripsi data
  3. CMembangun koneksi dan menyinkronkan nomor urut
  4. DMenemukan alamat IP sebuah host sebelum data dapat dikirim kepadanya
18.Jaringan komputerSulit

Head-of-line blocking pada HTTP/2 melalui TCP terjadi karena:

  1. AServer tidak dapat menangani permintaan paralel
  2. BSetiap permintaan memerlukan koneksi TCP baru sendiri, sehingga permintaan berikutnya menunggu dalam antrean
  3. CSatu segmen TCP yang hilang menunda semua stream multipleks hingga segmen tersebut dikirim ulang
  4. DHTTP/2 menggunakan UDP
19.Subnetting IPv4Sedang
255.255.254.011111111111111111111111000000000bit jaringanbit host

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

255.255.254.0
H =
20.Subnetting IPv4Sulit
oktet terakhir = 80012816403211608040201jaringanhost

Sebuah host memiliki alamat 10.20.232.80/26. Berapa angka terakhir (oktet keempat) x dari alamat broadcast subnetnya?

10.20.232.80/26
x =

3Larutan

1.Sistem bilangan

Jawaban: N = −128

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 = −128

Jawaban

N = −128
2.Sistem bilangan

Jawaban: M = 937,5 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

800·600·16 = 7680000 bit = 960000 B

Ubah ke KiB

960000/1024 = 937,5 KiB

Jawaban

M = 937,5 KiB
3.Logika proposisional & pembuktian

Jawaban: ¬c ∨ a

Ekuivalensi logis: dua rumus ekuivalen (≡) jika bernilai sama pada setiap baris tabel kebenaran. Tautologi bernilai 1 pada setiap baris, kontradiksi bernilai 0 pada setiap baris, dan kontingensi bukan keduanya. 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 distributif, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).

Hukumnya

a → b bernilai 0 hanya jika a = 1 dan b = 0, jadi sama dengan ¬a ∨ b.
c → a ≡ ¬c ∨ a

Periksa dengan tabel kebenaran

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

Jawaban

¬c ∨ a

Kolom setelah garis adalah pilihan dalam urutan yang ditampilkan.

4.Logika proposisional & pembuktian

Jawaban: ∃x ∃y (R(x, y) ∧ ¬R(y, x))

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.

Pindahkan negasi ke dalam

¬∀x ∀y (R(x, y) → R(y, x)) ≡ ∃x ∃y (R(x, y) ∧ ¬R(y, x))

Jawaban

∃x ∃y (R(x, y) ∧ ¬R(y, x))

Pilihan lain mempertahankan kuantor tanpa perubahan, mengubah urutan kuantor, atau menegasikan rumus di dalam dengan salah.

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.

ABCD000111100001111010111312041507060120131151141819111010

Kelompokkan angka 0

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

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

Bentuk POS minimal

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

Jawaban

N = 4

Ada pengelompokan lain dengan ukuran sama; banyaknya suku dan literalnya sama.

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

Jawaban: fout = 0,5 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 = 1 kHz / 2 = 0,5 kHz

Jawaban

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

Jawaban: 3−1 mod 14 = 5

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

Algoritma Euclid yang diperluas

Setiap sisa r ditulis sebagai r ≡ t·3 (mod 14).

r = 14, t = 0
r = 3, q = 4, t = 1
r = 2, q = 1, t = −4
r = 1, q = 2, t = 5

Invers

1 ≡ 5·3 (mod 14)
x = 5
periksa: 3·5 = 15 = 1·14 + 1

Jawaban

3−1 mod 14 = 5
8.Teori bilangan & aritmetika modular

Jawaban: m = 152

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.

Eksponen privat

n = 259, φ(n) = 216
d = 5−1 mod 216 = 173

Dekripsi dengan pengkuadratan berulang

173 = 128 + 32 + 8 + 4 + 1
1361 ≡ 136 (mod 259)
1362 ≡ 107 (mod 259)
1364 ≡ 53 (mod 259)
1368 ≡ 219 (mod 259)
13616 ≡ 46 (mod 259)
13632 ≡ 44 (mod 259)
13664 ≡ 123 (mod 259)
136128 ≡ 107 (mod 259)
136173 ≡ 136·53·219·44·107 ≡ 152 (mod 259)

Pesan

m = 152
periksa: 1525 mod 259 = 136

Jawaban

m = 152
9.Algoritma & kompleksitas

Jawaban: C · O(n log n + k log n)

Mengapa ini jawabannya

Pengurutan berbiaya O(n log n) dan setiap kueri O(log n); ini mengalahkan k kali pemindaian linear (O(nk)) ketika k besar.

Jawaban

C · O(n log n + k log n)
10.Algoritma & kompleksitas

Jawaban: A · Quickselect berjalan dalam O(n) yang diharapkan, dan median-of-medians menjamin O(n) pada kasus terburuk

Mengapa ini jawabannya

Kerja yang diharapkan quickselect adalah n + n/2 + n/4 + ... = O(n) dengan pivot acak; memilih pivot sebagai median of medians membuat kasus terburuknya linear.

Jawaban

A · Quickselect berjalan dalam O(n) yang diharapkan, dan median-of-medians menjamin O(n) pada kasus terburuk
11.Struktur data

Jawaban: D · Stack

Mengapa ini jawabannya

Push setiap kurung buka dan pop ketika muncul kurung tutup; kurung tutup harus cocok dengan kurung yang di-pop dan stack harus kosong di akhir.

Jawaban

D · Stack
12.Struktur data

Jawaban: D · Kueri prefix sum dan pembaruan satu elemen

Mengapa ini jawabannya

Fenwick tree menyimpan jumlah parsial atas rentang yang ditentukan oleh bit-bit rendah setiap indeks, sehingga prefix sum maupun pembaruan titik memerlukan O(log n).

Jawaban

D · Kueri prefix sum dan pembaruan satu elemen
13.Teori graf

Jawaban: Sirkuit Euler

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.

Derajat

deg(A) = 2, deg(B) = 4, deg(C) = 4, deg(D) = 4, deg(E) = 4, deg(F) = 2, deg(G) = 4

Simpul ganjil

0
Sirkuit Euler

Jawaban

Sirkuit Euler
14.Teori graf

Jawaban: W = 40

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.

Algoritma Kruskal

AB (3): ambil
DF (5): ambil
AC (7): ambil
BE (11): ambil
BC (13): lewati, membentuk siklus
EF (14): ambil

Total bobot

W = 3 + 5 + 7 + 11 + 14 = 40

Jawaban

W = 40
15.Basis data & SQL

Jawaban: B · Semua baris dari tabel kiri dan baris yang cocok dari tabel kanan, dengan NULL jika tidak ada kecocokan

Mengapa ini jawabannya

Left outer join mempertahankan setiap baris kiri; kolom kanan yang tidak cocok diisi dengan NULL.

Jawaban

B · Semua baris dari tabel kiri dan baris yang cocok dari tabel kanan, dengan NULL jika tidak ada kecocokan
16.Basis data & SQL

Jawaban: A · Jadwal yang conflict-serializable

Mengapa ini jawabannya

2PL menjamin serializability, tetapi deadlock tetap mungkin terjadi dan harus dideteksi atau dicegah.

Jawaban

A · Jadwal yang conflict-serializable
17.Jaringan komputer

Jawaban: C · Membangun koneksi dan menyinkronkan nomor urut

Mengapa ini jawabannya

Handshake membangun koneksi dan menyepakati nomor urut awal di kedua sisi sebelum data dikirim.

Jawaban

C · Membangun koneksi dan menyinkronkan nomor urut
18.Jaringan komputer

Jawaban: C · Satu segmen TCP yang hilang menunda semua stream multipleks hingga segmen tersebut dikirim ulang

Mengapa ini jawabannya

TCP mengirimkan byte secara berurutan, sehingga satu kehilangan menghentikan setiap stream pada koneksi tersebut. QUIC (HTTP/3) menangani stream secara independen melalui UDP.

Jawaban

C · Satu segmen TCP yang hilang menunda semua stream multipleks hingga segmen tersebut dikirim ulang
19.Subnetting IPv4

Jawaban: H = 510

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.254.0 = /23

Host yang dapat dipakai

29 − 2 = 510

Jawaban

H = 510
20.Subnetting IPv4

Jawaban: x = 127

Subnetting IPv4: sebuah alamat terdiri dari 32 bit. Prefiks /p menyatakan berapa bit awal yang mengidentifikasi jaringan; sisa 32 − p bit menomori host. Sebuah subnet memiliki 2³²⁻ᵖ alamat, tetapi yang pertama (alamat jaringan) dan terakhir (alamat broadcast) tidak dapat diberikan ke host, sehingga muat 2³²⁻ᵖ − 2 host. Pengecualian: /31 (tautan point-to-point, RFC 3021) memakai kedua alamatnya yang berjumlah 2 untuk host, dan /32 hanya satu alamat (satu host atau loopback).

Ukuran blok

26 = 64

Subnet host ini

jaringan: ⌊80/64⌋·64 = 64
broadcast: 64 + 64 − 1 = 127
host yang dapat dipakai: 65 … 126

Jawaban

x = 127

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