回答編集履歴
4
修正
answer
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
親要素の要素数を 2 倍して 1 を足したものが左の子の要素数です。
|
57
57
|
同じくそれに 1 を足したものが右の子になります。
|
58
58
|
|
59
|
-
ということは、要素数が奇数の場合は 1 を引いて 2 で割っ
|
59
|
+
ということは、要素数が奇数の場合は 1 を引いて 2 で割ったものが親の要素数になります。偶数の場合は 2 を引いて 2 で割ったものです。
|
60
60
|
|
61
61
|
ルートから左の子に移動し、次に移動先の右の子に移動するには、
|
62
62
|
0 * 2 + 1 = 1
|
3
修正
answer
CHANGED
@@ -56,7 +56,8 @@
|
|
56
56
|
親要素の要素数を 2 倍して 1 を足したものが左の子の要素数です。
|
57
57
|
同じくそれに 1 を足したものが右の子になります。
|
58
58
|
|
59
|
-
ということは、要素数を 2 で割って端数を切り捨てたものが親の要素数になります。
|
59
|
+
ということは、要素数が奇数の場合は 1 を引いて 2 で割って端数を切り捨てたものが親の要素数になります。偶数の場合は 2 を引いて 2 で割ったものです。
|
60
|
+
|
60
61
|
ルートから左の子に移動し、次に移動先の右の子に移動するには、
|
61
62
|
0 * 2 + 1 = 1
|
62
63
|
1 * 2 + 2 = 4
|
2
修正
answer
CHANGED
@@ -26,7 +26,7 @@
|
|
26
26
|
しかし、二分木に関しては「枝の数は必ず 0~2」という制約があるので、もっと簡単な構造で表現できます。完全二分木に至っては「枝の数は必ず 0 か 2」と制約が強まるので、さらに簡単になります。
|
27
27
|
葉には子要素が無く、子要素がある場合は必ず子の数は 2 です。
|
28
28
|
|
29
|
-
まず
|
29
|
+
まず 15 個の要素から成る配列を用意します。
|
30
30
|
要素 0 がルートで、ここから枝分かれしていきます。
|
31
31
|
ルートの左の子要素は、要素 1 です。
|
32
32
|
ルートの右の子要素は、要素 2 です。
|
1
修正
answer
CHANGED
@@ -23,7 +23,8 @@
|
|
23
23
|
基礎の段階でとりこぼすと授業がわからなくなって長時間つらい思いをするはめになります。
|
24
24
|
|
25
25
|
通常、木構造を表現するには、ノードクラスを作ってそれをつなぎます。
|
26
|
-
しかし、二分木に関しては「枝の数は必ず 0~2」という制約があるので、もっと簡単な構造で表現できます。完全二分木に至っては「枝の数は必ず 2」と制約が強まるので、さらに簡単になります。
|
26
|
+
しかし、二分木に関しては「枝の数は必ず 0~2」という制約があるので、もっと簡単な構造で表現できます。完全二分木に至っては「枝の数は必ず 0 か 2」と制約が強まるので、さらに簡単になります。
|
27
|
+
葉には子要素が無く、子要素がある場合は必ず子の数は 2 です。
|
27
28
|
|
28
29
|
まず 7 個の要素から成る配列を用意します。
|
29
30
|
要素 0 がルートで、ここから枝分かれしていきます。
|