zh-hant/docs/chapter_preface/suggestions.md
!!! tip
為了獲得最佳的閱讀體驗,建議你通讀本節內容。
* 的是選讀章節,內容相對困難。如果你的時間有限,可以先跳過。None 來表示“空”。=== "Python"
```python title=""
"""標題註釋,用於標註函式、類別、測試樣例等"""
# 內容註釋,用於詳解程式碼
"""
多行
註釋
"""
```
=== "C++"
```cpp title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Java"
```java title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "C#"
```csharp title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Go"
```go title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Swift"
```swift title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "JS"
```javascript title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "TS"
```typescript title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Dart"
```dart title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Rust"
```rust title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "C"
```c title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Kotlin"
```kotlin title=""
/* 標題註釋,用於標註函式、類別、測試樣例等 */
// 內容註釋,用於詳解程式碼
/**
* 多行
* 註釋
*/
```
=== "Ruby"
```ruby title=""
### 標題註釋,用於標註函式、類別、測試樣例等 ###
# 內容註釋,用於詳解程式碼
# 多行
# 註釋
```
相較於文字,影片和圖片具有更高的資訊密度和結構化程度,更易於理解。在本書中,重點和難點知識將主要透過動畫以圖解形式展示,而文字則作為解釋與補充。
如果你在閱讀本書時,發現某段內容提供瞭如下圖所示的動畫圖解,請以圖為主、以文字為輔,綜合兩者來理解內容。
本書的配套程式碼託管在 GitHub 倉庫。如下圖所示,源程式碼附有測試樣例,可一鍵執行。
如果時間允許,建議你參照程式碼自行敲一遍。如果學習時間有限,請至少通讀並執行所有程式碼。
與閱讀程式碼相比,編寫程式碼的過程往往能帶來更多收穫。動手學,才是真的學。
執行程式碼的前置工作主要分為三步。
第一步:安裝本地程式設計環境。請參照附錄所示的教程進行安裝,如果已安裝,則可跳過此步驟。
第二步:克隆或下載程式碼倉庫。前往 GitHub 倉庫。如果已經安裝 Git ,可以透過以下命令克隆本倉庫:
git clone https://github.com/krahets/hello-algo.git
當然,你也可以在下圖所示的位置,點選“Download ZIP”按鈕直接下載程式碼壓縮包,然後在本地解壓即可。
第三步:執行源程式碼。如下圖所示,對於頂部標有檔案名稱的程式碼塊,我們可以在倉庫的 codes 檔案夾內找到對應的源程式碼檔案。源程式碼檔案可一鍵執行,將幫助你節省不必要的除錯時間,讓你能夠專注於學習內容。
除了本地執行程式碼,網頁版還支持 Python 程式碼的視覺化執行(基於 pythontutor 實現)。如下圖所示,你可以點選程式碼塊下方的“視覺化執行”來展開檢視,觀察演算法程式碼的執行過程;也可以點選“全屏觀看”,以獲得更好的閱覽體驗。
在閱讀本書時,請不要輕易跳過那些沒學明白的知識點。歡迎在評論區提出你的問題,我和小夥伴們將���誠為你解答,一般情況下可在兩天內回覆。
如下圖所示,網頁版每個章節的底部都配有評論區。希望你能多關注評論區的內容。一方面,你可以瞭解大家遇到的問題,從而查漏補缺,激發更深入的思考。另一方面,期待你能慷慨地回答其他小夥伴的問題,分享你的見解,幫助他人進步。
從總體上看,我們可以將學習資料結構與演算法的過程劃分為三個階段。
如下圖所示,本書內容主要涵蓋“階段一”,旨在幫助你更高效地展開階段二和階段三的學習。