This commit is contained in:
krahets
2025-12-31 19:37:45 +08:00
parent 29ec0c699d
commit 3c9d5689c4
279 changed files with 40895 additions and 16087 deletions

View File

@@ -196,12 +196,6 @@ comments: true
```
=== "Zig"
```zig title=""
```
ードは2つの参照ポインタを持ち、それぞれ<u>左の子ノード</u>と<u>右の子ノード</u>を指しています。このードは、これら2つの子ードの<u>親ノード</u>と呼ばれます。二分木のノードが与えられたとき、このノードの左の子とその下にあるすべてのノードで形成される木を、このノードの<u>左部分木</u>と呼びます。同様に、<u>右部分木</u>も定義できます。
**二分木では、葉ノードを除いて、他のすべてのノードは子ノードと空でない部分木を含みます。** 下図に示すように、「ード2」を親ードとして見ると、その左と右の子ードはそれぞれ「ード4」と「ード5」です。左部分木は「ード4」とその下にあるすべてのードで形成され、右部分木は「ード5」とその下にあるすべてのードで形成されます。
@@ -443,12 +437,6 @@ comments: true
```
=== "Zig"
```zig title="binary_tree.zig"
```
### 2. &nbsp; ノードの挿入と削除
連結リストと同様に、二分木でのノードの挿入と削除はポインタを変更することで実現できます。下図に例を示します。
@@ -603,12 +591,6 @@ comments: true
```
=== "Zig"
```zig title="binary_tree.zig"
```
!!! tip
ノードの挿入は二分木の元の論理構造を変更する可能性があり、ノードの削除は通常そのノードとそのすべての部分木を削除することになることに注意してください。したがって、二分木では、挿入と削除は通常一連の操作を通じて実行され、意味のある結果を得ます。