コンピュータサイエンス基礎:直前対策パック

公式集、全トピックの解法の要点、20 問の演習問題。完全な解答は巻末にあります。

新しい問題科目に戻る

印刷ウィンドウで「PDF として保存」を選ぶと、コピーを端末に保存できます。

1公式と解法

記数法

位取り
2 進数 2k、8 進数 8k、16 進数 16k
10 進数へ
Σ dk·bk
10 進数から
基数で割り、余りを下から上へ読む
16 進数 ↔ 2 進数
16 進数 1 桁 = 4 ビット
2 の補数
ビットを反転して 1 を足す

命題論理と証明

真理値表の行
2ⁿ
含意
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
含意の否定
¬(p → q) ≡ p ∧ ¬q
同値(双条件)
p ↔ q ≡ (p → q) ∧ (q → p)
ド・モルガンの法則
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
分配法則
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
量化子の否定
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
肯定式(modus ponens)、否定式(modus tollens)
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

解き方

  1. 異なる変数の数を数えます:真理値表の行数は 2ⁿ で、最初の行はすべて 1 です。
  2. 部分式ごとに列を用意し、内側から順に列を埋めていきます。
  3. 各結合子の規則を適用します:→ が 0 になるのは 1 → 0 のときだけ、↔ は両辺が一致するとき 1 です。
  4. 同値の判定では最後の列を行ごとに比べます。論証の判定では、すべての前提が 1 である行だけを見ます。
  5. 量化された文を否定するには、¬ を内側へ移し、∀ と ∃ を入れ替え、内側の式を否定します。

デジタル論理:ゲート・カルノー図・フリップフロップ

基本ゲート
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
ブールの規則
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
ド・モルガンの法則
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
カルノー図の並び順
00, 01, 11, 10 (Gray code)
2ᵏ 個のセルのグループ
k 個の変数が消える
4 対 1 マルチプレクサ
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
フリップフロップ
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
カウンタ
n ビット:2ⁿ 状態; mod-N:2ⁿ ≥ N を満たす最小の n; fout = fclk/N
リップルカウンタ
fmax = 1/(n·tpd)
リングカウンタとジョンソンカウンタ
n 状態と 2n 状態

解き方

  1. 回路では、入力から出力へ向かってゲートを 1 つずつ進み、各配線に値を書き込むか、式を書いて真理値表を埋めましょう。
  2. 簡単化するには、1(とドントケアは X として)を、行と列がグレイコード 00, 01, 11, 10 のカルノー図に書き込みましょう。
  3. 1 を、1, 2, 4, 8, 16 個のセルからなる、できるだけ少なくできるだけ大きなグループで、端をまたぎながら覆いましょう。各グループは、一定のままの変数からなる 1 つの積項です。POS 形には 0 をグループ化します。
  4. フリップフロップとカウンタでは、各有効クロックエッジで入力を読み取り、エッジごとの状態を書き出し、n ビットのカウンタは 2ⁿ 個の状態で折り返すことを忘れないようにしましょう。

整数論と合同式

余りのある割り算
a = q·n + r, 0 ≤ r < n
ユークリッド
gcd(a, b) = gcd(b, a mod b)
最小公倍数
lcm(a, b) = a·b/gcd(a, b)
逆行列
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
一次合同式
a·x ≡ b → x ≡ a⁻¹·b (mod n)
オイラーのトーシェント関数
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
フェルマー
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

解き方

  1. まずすべての数を n で割った余りに直します。余りは 0 から n − 1 の間です。
  2. 最大公約数は、ユークリッドの互除法で割り算を繰り返して求めます。最後の 0 でない余りが最大公約数です。
  3. 逆元は拡張ユークリッドの互除法で求め、a の係数を取ります。負なら n を足します。
  4. a·x ≡ b は a⁻¹ を掛けて解きます。2 つの合同式は x = r₁ + m₁k とおいて組み合わせます。
  5. べき乗では、指数を 2 進数で書いて平方を繰り返します。RSA では d = e⁻¹ mod φ(n)、φ(n) = (p − 1)(q − 1) です。

グラフ理論

握手補題
Σ deg(v) = 2|E|
完全グラフ
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
正則グラフ
|E| = n·k/2
木と森
|E| = n − 1, |E| = n − c
木の葉
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
オイラー
閉路:すべての次数が偶数; 路:奇数次数がちょうど 2 つ
Kn のハミルトン閉路
(n − 1)!/2
ダイクストラ法の更新
d(v) = min(d(v), d(u) + w(u, v))
長さ L の歩道
(Mᴸ)ij

解き方

  1. 各頂点の次数を書き出します。次数の総和は辺の数の 2 倍になります。
  2. オイラーの問題では、グラフが連結であることを確かめ、奇数次数の頂点を数えます。
  3. 木では、辺が n − 1 本であることと握手補題を使います。
  4. ダイクストラ法では、暫定距離の表をつくり、毎回、未確定の頂点のうち最小のものを確定します。
  5. 最小全域木では、辺を重みの順に並べ、閉路をつくる辺を飛ばす方法(クラスカル法)か、始点から 1 本の木を成長させる方法(プリム法)を使います。

IPv4 サブネット化

サブネットあたりのホスト数
2(32 − prefix) − 2 (/31: 2, /32: 1)
ブロックサイズ
256 − (mask octet)
ネットワークアドレス
IP AND マスク
ブロードキャストアドレス
IP OR (NOT マスク):ホスト部のビットをすべて 1 にする
n ビット借りたときのサブネット数
2n

2演習問題

1.記数法ふつう
8 ビットの 2 の補数0−12806403201608040201

8 ビットの 2 の補数で −52 を格納するようにビットを設定します。符号なしの数として読むと、このパターンの値 U はいくつですか?

N = −528 bit
U =
2.記数法むずかしい
16 bit1 px256 px256 pxM = ? KiB

非圧縮の画像が 256 × 256 ピクセル、1 ピクセルあたり 16 ビットです。必要なメモリ M は何 KiB(1 KiB = 1024 バイト)ですか?

256 × 256 px16 bit/px1 KiB = 1024 B
M = KiB
3.命題論理と証明ふつう
pqr¬(¬p ∧ q) ↔ pr ↔ q(¬(¬p ∧ q) ↔ p) ↔ (r ↔ q)111?110?101?100?011?010?001?000?

この論理式 (¬(¬p ∧ q) ↔ p) ↔ (r ↔ q) は、真理値表の 8 行のうち何行で真になりますか? この数を N とします。

(¬(¬p ∧ q) ↔ p) ↔ (r ↔ q)
N =
4.命題論理と証明むずかしい
¬qq ∧ ¬r¬rr

前提 q → r; q が与えられています。そこから導かれる結論はどれですか? クリックしてください。

q → rq
  1. 1¬q
  2. 2q ∧ ¬r
  3. 3¬r
  4. 4r
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
ABC00011110011011030204051706

カルノー図を使って F(A, B, C) = Σm(0, 1, 7) の最小の積和形(SOP)を求めてください。リテラル L は合計でいくつ含まれますか(プライム付きの変数も 1 つのリテラルと数えます)?

F(A, B, C) = Σm(0, 1, 7)
L =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
CLKD1234567

正エッジトリガの D フリップフロップが Q = 0 から始まり、図の入力を受け取ります。Q が 1 から 0 に戻る最初のクロックエッジをクリックしてください。

Q₀ = 0D
  1. 1クロックエッジ 1
  2. 2クロックエッジ 2
  3. 3クロックエッジ 3
  4. 4クロックエッジ 4
  5. 5クロックエッジ 5
  6. 6クロックエッジ 6
  7. 7クロックエッジ 7
7.整数論と合同式ふつう

オイラーのトーシェント関数 φ(11)、つまり 1 から 11 までの整数のうち 11 と互いに素なものの個数を求めてください。

n = 11 = 11
φ(11) =
8.整数論と合同式むずかしい
mc = me​ mod n315m = cd​ mod n?(n, e) = (319, 17)d

ある RSA 鍵は p = 11、q = 29、e = 17 を使います。暗号文 c = 315 を復号して、メッセージ m を求めてください。

p = 11q = 29e = 17c = 315
m =
9.アルゴリズムと計算量ふつう

for i = 1 to n: for j = 1 to i: do O(1) work の時間計算量は何ですか?

  1. AO(n)
  2. BO(n²)
  3. CO(n log n)
  4. DO(n³)
10.アルゴリズムと計算量むずかしい

ナップサック問題のどの変種で、「重さあたりの価値の順に品物をとる」という貪欲な規則が常に最適解を与えますか?

  1. Aどちらの変種でもない
  2. B品物を必ず丸ごととらなければならない 0/1 ナップサック問題
  3. C品物を分割できる分数ナップサック問題
  4. D両方の変種
11.データ構造ふつう

隣接行列を使って辺 (u, v) が存在するかを調べるのにどれだけ時間がかかりますか。

  1. AO(1)
  2. BO(E)
  3. CO(log V)
  4. DO(V)
12.データ構造むずかしい

ダブルハッシュ法が主に軽減する線形探査法の問題はどれですか。

  1. Aキーをテーブルに格納する必要があること
  2. Bキーの値を読み取る O(n) のコスト
  3. C使用中のスロットが長く連なる一次クラスタリング
  4. Dハッシュ関数が必要であること
13.グラフ理論ふつう

連結グラフに 19 個の頂点と 28 本の辺があります。全域木にするには、辺を何本k取り除く必要がありますか?

|V| = 19|E| = 28
k =
14.グラフ理論むずかしい
181141951017157ABCDEFG

プリム法は、頂点 A から始めて最小全域木をつくります。それが 3 番目に加える辺をクリックしてください。

始点:Ak = 3
  1. 1辺 AB
  2. 2辺 AC
  3. 3辺 BD
  4. 4辺 CE
  5. 5辺 DF
  6. 6辺 EF
  7. 7辺 GB
  8. 8辺 GD
  9. 9辺 GE
15.データベースと SQLふつう

テーブルのすべての行を削除し、構造は残し、WHERE 句を付けられない文はどれですか?

  1. AALTER TABLE
  2. BTRUNCATE TABLE
  3. CDROP TABLE
  4. DWHERE 句付きの DELETE FROM
16.データベースと SQLむずかしい

FULL OUTER JOIN は何を返しますか?

  1. A一致しない行のみ
  2. B一致する行のみ
  3. C両方のテーブルのすべての行。可能な限り対応付け、対応がない部分は NULL で埋める
  4. D一方のテーブルの各行を他方のすべての行と組み合わせる直積(デカルト積)
17.コンピュータネットワークふつう

「ping」コマンドはどのプロトコルを使いますか?

  1. ATCP
  2. BHTTP
  3. CICMP
  4. DUDP
18.コンピュータネットワークむずかしい

TCP のウィンドウスケールオプションが導入されたのはなぜですか?

  1. A16 ビットのウィンドウフィールドではウィンドウが 65,535 バイトに制限され、高速な長距離経路には小さすぎるから
  2. B32 ビットのウィンドウフィールドは大きすぎて、送信されるすべての TCP セグメントのヘッダー領域を無駄にしていたから
  3. C輻輳した経路で UDP が送信速度を制御する方法を必要としたから
  4. Dそれがないと、TCP は長距離リンクで失われたセグメントを検出できなかったから
19.IPv4 サブネット化ふつう
/24 → /2911111111111111111111111111111000ネットワーク部ホスト部

ネットワーク 192.168.59.0/24 を /29 のサブネットに分割し、最も小さいアドレスから 1、2、3、… と番号をつけます(サブネット 1 は .0 から始まる)。サブネット 8 のネットワークアドレスの第 4 オクテット x はいくつですか?

192.168.59.0/24/29サブネット 8 (サブネット 1 は .0 から始まる)
x =
20.IPv4 サブネット化むずかしい
最後のオクテット = 74012816403201618041201ネットワークホスト

あるホストのアドレスは 10.20.23.74/26 です。そのサブネットのブロードキャストアドレスの最後の数(第 4 オクテット)x はいくつですか?

10.20.23.74/26
x =

3溶液

1.記数法

答え: U = 204

ビットの設定:各ビットは 2 のべき乗(128、64、…、1)の値をもちます。16 進の 1 桁はちょうど 4 ビットで、8 ビットの 2 の補数では、いちばん左のビットの値は −128 です。ビット演算は、各ビット位置を別々に扱います。

反転して 1 を足す

52 = 0011 0100
反転後: 1100 1011
+1 → 1100 1100

符号なしとして読む

1100 1100₂ = 256 − 52 = 204

答え

U = 204
2.記数法

答え: M = 128 KiB

位取り記数法:各桁の値は、その数字に基数のべき乗を掛けたものです。2 進数では各桁の重みが 1、2、4、8、16、…、16 進数では 1、16、256、… で、A–F は 10–15 を表します。8 ビットの 2 の補数では、最上位ビットの重みが +128 ではなく −128 になり、こうして負の数を表します。

ビットとバイト

256·256·16 = 1048576 bit = 131072 B

KiB に換算する

131072/1024 = 128 KiB

答え

M = 128 KiB
3.命題論理と証明

答え: N = 4

真理値表:n 個の異なる変数をもつ論理式には、真理値のすべての組み合わせに対応する 2ⁿ 行があります(1 = 真、0 = 偽)。内側から順に進め、部分式ごとに列を用意します。¬a は値を反転させ、a ∧ b は両方が 1 のときだけ 1、a ∨ b は両方が 0 のときだけ 0、a → b は a = 1 かつ b = 0 のときだけ 0、a ↔ b は両辺が等しいとき 1 です。

真理値表を行ごとに見る

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

値が 1 の行を数える

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

答え

N = 4
4.命題論理と証明

答え: r

量化子と論証:¬∀x P(x) ≡ ∃x ¬P(x)、¬∃x P(x) ≡ ∀x ¬P(x)。否定を内側へ移し、通過する量化子をすべて入れ替え、内側の式は ¬(a → b) ≡ a ∧ ¬b のような命題論理の法則で否定します。論証は、すべての前提が 1 であるどの行でも結論が 1 のとき、妥当です。前提が真で結論が偽になる行が 1 つでもあれば、それは反例であり、その論証が妥当でないことを示します。

すべての前提が真の行

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

結論

r (肯定式(modus ponens))

答え

r
5.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: L = 5

カルノー図:セルはグレイコード(00, 01, 11, 10)の順に並んでいるので、端をまたぐものも含め、隣り合うセルはちょうど 1 つの変数だけが異なります。1 を、1, 2, 4, 8, 16 個のセルからなる長方形で、できるだけ大きく、できるだけ少ない数でグループ化し、すべての 1 を覆います。各グループは 1 つの積項で、グループの中で一定のままの変数からなります。2ᵏ 個のセルのグループでは k 個の変数が消えます。ドントケア(X)はグループを大きくするために使えますが、覆う必要はありません。代わりに 0 をグループ化すると、最小の POS 形が得られます。

ABC00011110011011030204051706

1 をグループ化する

各グループは 2ᵏ 個のセルからなる長方形です。端のセルは、反対側の端のセルと隣り合っています。

A′B′
ABC

最小の SOP 形

F = A′B′ + ABC
L = 5

答え

L = 5
6.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: クロックエッジ 5

フリップフロップとカウンタ:フリップフロップは、有効なクロックエッジでだけ変化します。D は入力をコピーし(Q⁺ = D)、T は T = 1 のときトグルし、JK は 00 で保持、01 でリセット、10 でセット、11 でトグルします。n ビットの 2 進カウンタには 2ⁿ 個の状態があり、2ⁿ を法として数えます。mod-N カウンタは 0, 1, …, N − 1 と数えて 0 に戻り、2ⁿ ≥ N を満たす最小の n 個のフリップフロップが必要です。リップルカウンタの各段は周波数を半分にするので、mod-N カウンタの最後の出力は fclk/N で動作します。n 個のフリップフロップのジョンソンカウンタには 2n 個の状態があり、リングカウンタには n 個あります。

エッジごとの Q

D フリップフロップは、立ち上がりエッジごとに D をコピーします:Q⁺ = D。

1: D = 1 → Q = 1
2: D = 1 → Q = 1
3: D = 1 → Q = 1
4: D = 1 → Q = 1
5: D = 0 → Q = 0
6: D = 1 → Q = 1
7: D = 0 → Q = 0

1 から 0 への最初の変化

クロックエッジ 5

答え

クロックエッジ 5
7.整数論と合同式

答え: φ(11) = 10

逆元と合同式:a が n を法として逆元をもつのは、gcd(a, n) = 1 のときに限ります。拡張ユークリッドの互除法で 1 = s·n + t·a と書くと、a⁻¹ ≡ t (mod n) です。gcd(a, n) = 1 のとき、合同式 a·x ≡ b (mod n) の解は x ≡ a⁻¹·b です。法が互いに素な 2 つの合同式 x ≡ r₁ (mod m₁) と x ≡ r₂ (mod m₂) には、m₁·m₂ を法として 1 つの解があります(中国の剰余定理)。オイラーの φ(n) は、1 から n までの数のうち n と互いに素なものの個数です:φ(n) = n·∏(1 − 1/p)。

素因数

11 = 11

トーシェント関数

φ(11) = 11 − 1 = 10

答え

φ(11) = 10
8.整数論と合同式

答え: m = 310

冪剰余と RSA:aᵏ mod n は反復二乗法で計算します:k を 2 進数で書き、二乗し、毎回簡約し、ビットが 1 の冪を掛けます。フェルマー:素数 p が a を割り切らないとき aᵖ⁻¹ ≡ 1 (mod p) なので、指数は p − 1 を法として簡約できます。RSA:素数 p と q を選び、n = p·q、φ(n) = (p − 1)(q − 1) とします。公開指数 e は φ(n) と互いに素で、秘密指数は d = e⁻¹ mod φ(n) です。暗号化は c = mᵉ mod n、復号は m = cᵈ mod n で行います。

秘密指数

n = 319, φ(n) = 280
d = 17−1 mod 280 = 33

反復二乗法で復号する

33 = 32 + 1
3151 ≡ 315 (mod 319)
3152 ≡ 16 (mod 319)
3154 ≡ 256 (mod 319)
3158 ≡ 141 (mod 319)
31516 ≡ 103 (mod 319)
31532 ≡ 82 (mod 319)
31533 ≡ 315·82 ≡ 310 (mod 319)

メッセージ

m = 310
確認: 31017 mod 319 = 315

答え

m = 310
9.アルゴリズムと計算量

答え: B · O(n²)

これが答えになる理由

内側の本体は合計で n(n + 1) / 2 回実行され、これはやはり 2 乗です。

答え

B · O(n²)
10.アルゴリズムと計算量

答え: C · 品物を分割できる分数ナップサック問題

これが答えになる理由

品物を分割できる場合は、比率の最もよいものから選ぶのが最適です。0/1 ナップサックでは比率の高い品物がよりよい組み合わせを妨げることがあるので、動的計画法が必要です。

答え

C · 品物を分割できる分数ナップサック問題
11.データ構造

答え: A · O(1)

これが答えになる理由

行 u、列 v の要素を見れば、辺が存在するかどうかがすぐにわかります。隣接リストでは u の隣接頂点を走査する必要があるかもしれません。

答え

A · O(1)
12.データ構造

答え: C · 使用中のスロットが長く連なる一次クラスタリング

これが答えになる理由

線形探査法は 1 ずつ進むので、使用中の連なりが大きくなって合体します。ダブルハッシュ法は 2 つ目のハッシュを刻み幅に使うので、異なるキーは異なる系列を探査します。

答え

C · 使用中のスロットが長く連なる一次クラスタリング
13.グラフ理論

答え: k = 10

オイラー、ハミルトン、木:連結グラフは、すべての頂点の次数が偶数のときオイラー閉路(すべての辺を 1 回ずつ通って始点に戻る)をもち、ちょうど 2 つの頂点の次数が奇数のとき、閉路でないオイラー路をもちます。その路は、一方の奇数次数の頂点から他方へ通ります。ハミルトン閉路はすべての頂点を 1 回ずつ訪れ、Kn には (n − 1)!/2 個あります。n 個の頂点をもつ木には n − 1 本の辺があり、m 本の辺をもつ連結グラフは、m − n + 1 本の辺を取り除いても全域木が残ります。

全域木の辺

19 − 1 = 18

取り除く辺

k = 28 − 18 = 10

答え

k = 10
14.グラフ理論

答え: 辺 BD

最短経路と全域木:ダイクストラ法は毎ラウンド 1 つの頂点を確定します:暫定距離が最小の未確定の頂点です。その距離は最終となり、各隣接頂点 v は d(v) = min(d(v), d(u) + w(u, v)) と更新されます。クラスカル法は、辺を軽い順に取り、閉路をつくる辺を飛ばして最小全域木をつくります。プリム法は、始点から 1 本の木を成長させ、その木から出る最も軽い辺を常に加えます。n 個の頂点の全域木には n − 1 本の辺があります。

プリム法

1. AC (1)
2. AB (18)
3. BD (14)
4. DF (5)
5. EF (10)
6. GE (7)

辺の番号 3

BD

答え

辺 BD
15.データベースと SQL

答え: B · TRUNCATE TABLE

これが答えになる理由

TRUNCATE はテーブルをすばやく空にし、定義は残します。DELETE は選んだ行を削除でき、DROP はテーブルそのものを削除します。

答え

B · TRUNCATE TABLE
16.データベースと SQL

答え: C · 両方のテーブルのすべての行。可能な限り対応付け、対応がない部分は NULL で埋める

これが答えになる理由

完全外部結合は両方のテーブルのすべての行を残し、一致する行を対にして、欠けている側を NULL で埋めます。

答え

C · 両方のテーブルのすべての行。可能な限り対応付け、対応がない部分は NULL で埋める
17.コンピュータネットワーク

答え: C · ICMP

これが答えになる理由

Ping は ICMP エコー要求(echo request)を送信し、エコー応答(echo reply)が返ってくるまでの時間を測定します。

答え

C · ICMP
18.コンピュータネットワーク

答え: A · 16 ビットのウィンドウフィールドではウィンドウが 65,535 バイトに制限され、高速な長距離経路には小さすぎるから

これが答えになる理由

元のヘッダーでは、確認応答されていないデータは最大 65,535 バイトです。ウィンドウスケーリングはこれに 2 のべき乗を掛けるため、帯域幅遅延積の大きい経路を満たすことができます。

答え

A · 16 ビットのウィンドウフィールドではウィンドウが 65,535 バイトに制限され、高速な長距離経路には小さすぎるから
19.IPv4 サブネット化

答え: x = 56

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

ブロックサイズ

23 = 8

サブネット番号 8

ネットワーク: (8 − 1)·8 = 56
ブロードキャスト: 56 + 8 − 1 = 63

答え

x = 56
20.IPv4 サブネット化

答え: x = 127

IPv4 サブネット化:アドレスは 32 ビットです。プレフィックス /p は先頭の何ビットがネットワークを表すかを示し、残りの 32 − p ビットでホストを番号付けします。サブネットには 2³²⁻ᵖ 個のアドレスがありますが、最初(ネットワークアドレス)と最後(ブロードキャストアドレス)はホストに割り当てられないため、2³²⁻ᵖ − 2 台のホストが収まります。 例外:/31(ポイントツーポイントリンク、RFC 3021)は 2 つのアドレスを両方ともホストに使い、/32 は単一のアドレス(単一ホストまたはループバック)です。

ブロックサイズ

26 = 64

このホストのサブネット

ネットワーク: ⌊74/64⌋·64 = 64
ブロードキャスト: 64 + 64 − 1 = 127
使えるホスト: 65 … 126

答え

x = 127

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