Sort the coding languages by applications. (#721)

This commit is contained in:
Yudong Jin
2023-09-04 03:19:08 +08:00
committed by GitHub
parent 8d5e84f70a
commit 9c3b7b6422
55 changed files with 6826 additions and 6826 deletions
@@ -82,14 +82,14 @@
在代码中,我们声明一个递归函数 `dfs(i, src, buf, tar)` ,它的作用是将柱 `src` 顶部的 $i$ 个圆盘借助缓冲柱 `buf` 移动至目标柱 `tar`
=== "Java"
=== "Python"
```java title="hanota.java"
[class]{hanota}-[func]{move}
```python title="hanota.py"
[class]{}-[func]{move}
[class]{hanota}-[func]{dfs}
[class]{}-[func]{dfs}
[class]{hanota}-[func]{solveHanota}
[class]{}-[func]{solve_hanota}
```
=== "C++"
@@ -102,14 +102,24 @@
[class]{}-[func]{solveHanota}
```
=== "Python"
=== "Java"
```python title="hanota.py"
[class]{}-[func]{move}
```java title="hanota.java"
[class]{hanota}-[func]{move}
[class]{}-[func]{dfs}
[class]{hanota}-[func]{dfs}
[class]{}-[func]{solve_hanota}
[class]{hanota}-[func]{solveHanota}
```
=== "C#"
```csharp title="hanota.cs"
[class]{hanota}-[func]{move}
[class]{hanota}-[func]{dfs}
[class]{hanota}-[func]{solveHanota}
```
=== "Go"
@@ -122,6 +132,16 @@
[class]{}-[func]{solveHanota}
```
=== "Swift"
```swift title="hanota.swift"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
=== "JS"
```javascript title="hanota.js"
@@ -142,46 +162,6 @@
[class]{}-[func]{solveHanota}
```
=== "C"
```c title="hanota.c"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
=== "C#"
```csharp title="hanota.cs"
[class]{hanota}-[func]{move}
[class]{hanota}-[func]{dfs}
[class]{hanota}-[func]{solveHanota}
```
=== "Swift"
```swift title="hanota.swift"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
=== "Zig"
```zig title="hanota.zig"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
=== "Dart"
```dart title="hanota.dart"
@@ -202,6 +182,26 @@
[class]{}-[func]{solve_hanota}
```
=== "C"
```c title="hanota.c"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
=== "Zig"
```zig title="hanota.zig"
[class]{}-[func]{move}
[class]{}-[func]{dfs}
[class]{}-[func]{solveHanota}
```
如下图所示,汉诺塔问题形成一个高度为 $n$ 的递归树,每个节点代表一个子问题、对应一个开启的 `dfs()` 函数,**因此时间复杂度为 $O(2^n)$ ,空间复杂度为 $O(n)$** 。
![汉诺塔问题的递归树](hanota_problem.assets/hanota_recursive_tree.png)