feat: add ruby code block - chapter backtracking

This commit is contained in:
khoaxuantu 2024-05-22 10:29:54 +07:00
parent 906824ce11
commit 231e853219

View File

@ -406,7 +406,27 @@
=== "Ruby"
```ruby title=""
### 回溯算法框架 ###
def backtrack(state, choices, res)
# 判断是否为解
if is_solution?(state)
# 记录解
record_solution(state, res)
return
end
# 遍历所有选择
for choice in choices
# 剪枝:判断选择是否合法
if is_valid?(state, choice)
# 尝试:做出选择,更新状态
make_choice(state, choice)
backtrack(state, choices, res)
# 回退:撤销选择,恢复到之前的状态
undo_choice(state, choice)
end
end
end
```
=== "Zig"