Bug fixes and improvements (#1298)

* Fix is_empty() implementation in the stack and queue chapter

* Update en/CONTRIBUTING.md

* Remove "剩余" from the state definition of knapsack problem

* Sync zh and zh-hant versions

* Update the stylesheets of code tabs

* Fix quick_sort.rb

* Fix TS code

* Update chapter_paperbook

* Upload the manuscript of 0.1 section

* Fix binary_tree_dfs.rb

* Bug fixes

* Update README

* Update README

* Update README

* Update README.md

* Update README

* Sync zh and zh-hant versions

* Bug fixes
This commit is contained in:
Yudong Jin
2024-04-22 02:26:32 +08:00
committed by GitHub
parent 74f1a63e8c
commit f616dac7da
61 changed files with 1606 additions and 145 deletions
@@ -123,7 +123,9 @@
=== "Ruby"
```ruby title=""
### 二元樹的陣列表示 ###
# 使用 nil 來表示空位
tree = [1, 2, 3, 4, nil, 6, 7, 8, 9, nil, nil, 12, nil, nil, 15]
```
=== "Zig"
+14 -3
View File
@@ -129,9 +129,9 @@ AVL 樹既是二元搜尋樹,也是平衡二元樹,同時滿足這兩類二
right: TreeNode | null; // 右子節點指標
constructor(val?: number, height?: number, left?: TreeNode | null, right?: TreeNode | null) {
this.val = val === undefined ? 0 : val;
this.height = height === undefined ? 0 : height;
this.left = left === undefined ? null : left;
this.right = right === undefined ? null : right;
this.height = height === undefined ? 0 : height;
this.left = left === undefined ? null : left;
this.right = right === undefined ? null : right;
}
}
```
@@ -214,7 +214,18 @@ AVL 樹既是二元搜尋樹,也是平衡二元樹,同時滿足這兩類二
=== "Ruby"
```ruby title=""
### AVL 樹節點類別 ###
class TreeNode
attr_accessor :val # 節點值
attr_accessor :height # 節點高度
attr_accessor :left # 左子節點引用
attr_accessor :right # 右子節點引用
def initialize(val)
@val = val
@height = 0
end
end
```
=== "Zig"
+29 -3
View File
@@ -106,7 +106,7 @@
val: number;
left: TreeNode | null;
right: TreeNode | null;
constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) {
this.val = val === undefined ? 0 : val; // 節點值
this.left = left === undefined ? null : left; // 左子節點引用
@@ -189,7 +189,16 @@
=== "Ruby"
```ruby title=""
### 二元樹節點類別 ###
class TreeNode
attr_accessor :val # 節點值
attr_accessor :left # 左子節點引用
attr_accessor :right # 右子節點引用
def initialize(val)
@val = val
end
end
```
=== "Zig"
@@ -432,7 +441,18 @@
=== "Ruby"
```ruby title="binary_tree.rb"
# 初始化二元樹
# 初始化節點
n1 = TreeNode.new(1)
n2 = TreeNode.new(2)
n3 = TreeNode.new(3)
n4 = TreeNode.new(4)
n5 = TreeNode.new(5)
# 構建節點之間的引用(指標)
n1.left = n2
n1.right = n3
n2.left = n4
n2.right = n5
```
=== "Zig"
@@ -594,7 +614,13 @@
=== "Ruby"
```ruby title="binary_tree.rb"
# 插入與刪除節點
_p = TreeNode.new(0)
# 在 n1 -> n2 中間插入節點 _p
n1.left = _p
_p.left = n2
# 刪除節點
n1.left = n2
```
=== "Zig"