演算法與資結:深度優先搜尋(DFS:Depth First Search)

離開之前使用「列舉法」的方式拉。
先前說過這篇列舉法(https://lucrelin.blogspot.com/2019/05/enumeration.html),有更好的解法:也就是這篇所說的「深度優先搜尋」演算法。

這篇所說使用深度優先搜尋的code:

下圖為進git結果:

下圖為編譯結果:(中間有太多組合所以省略,只截圖前後部分)


這次練習裡得到的機會學習:

學習1:
【狀況題】修改 Commit 紀錄:https://gitbook.tw/chapters/using-git/amend-commit1.html


學習2:
C語言的初始值會是什麼?

整理上面連結重點:
  • C中,變數或物件的「存活期(lifetime)」,由其「儲存期(storage duration)」決定。
  • C中定義3種「儲存期」:自動(automatic)、靜態(static)、配置(allocated)。
  • 自動變數:指一般在函式內宣告的變數、函式內的參數。其存活期為其被定義的{}內。沒給初始值時其記憶體的值是「亂數」。
  • 配置變數:指透過malloc()配置出的記憶體,會活到直到free()為止。沒給初始值時其記憶體的值是「亂數」。
  • 靜態變數:指全域變數、函式內用static宣告的變數,其壽命等於整個程式的壽命。沒給初始值時其記憶體的值會「自動初始化為0」。
  • 狀況題:陣列的初始值為何? => 解答:請見上面連結裡最下方說明。

留言

  1. Emperor Casino | Shootercasino
    Emperor Casino, a unique gambling site offering choegocasino over 200+ casino 제왕카지노 games and a huge selection of slots. Join today. | Play Now! | 24 Hours | 인카지노 No Login.

    回覆刪除

張貼留言

熱門文章