本題目主要目的是希望寫給「完全不會寫程式」的人,而且櫛風原本常用語言也不是Kotlin ,所以寫的程式基本上以易懂、以後方便學習其他語言為主,不會刻意使用各種 Kotlin 才有的語法來達成目的。且著重在語法跟思考模式,範例題目也是命令列介面。
資結結束了,倒數十一篇~~~~ 今天開始介紹演算法,簡單來說就是「解決一個問題的步驟」,但凡一套流程可以解決一件事,我們就可以稱之為演算法。 比如今天我們要解決...
通常我們在評估一個演算法好壞,最常下手的時間複雜度Time complexity。 簡單來說,就是整個程式需要執行多久,我們一般會用大O符號來表示。 以我們之前...
上集解答 第一個是O(N)、第二個是O(N²),不知道大家有沒有答對呢~ 貪婪演算法Greedy 貪婪演算法是一種非常常見的演算法,在生活中說不定大家也很直覺的...
上集解答 這題的貪婪想法其實很簡單「給比較容易滿足的孩子,他能接受的最小的餅乾。」 下面是程式碼實作: import java.util.Queue impor...
[x]插入排序 上集解答 import java.util.Queue import java.util.LinkedList fun main(){...
如果你今天想要在一個遞增陣列裡面尋找一個值你會怎麼做呢? 一格一格找嗎?這樣的最慘的時間複雜度是O(N)(也就是找到底才找到),其實還可以更快喔。 那就要用到今...
接下來我們來學習一種暴力跑過所有可能的方法,DFS 深度優先搜尋。 為了方便解釋,我們的範例使用資結那堂課曾經寫過的樹喔。 import java.util....
今天要講的內容跟昨天很類似,一樣是要遍歷一棵樹。 再次召喚樹樹~ 不過這次我們是用另外一個東西,這個叫做BFS 廣度優先搜尋。 具體來說,我們把每一個結點丟進一...
今天是最後一堂課了,我們來學一個數學相關的演算法——輾轉相除法。 輾轉相除法又叫做歐幾里德算法,他是目前最常拿來求最大公因數的方法。 作法很簡單,就是兩個數字一...
對不起我辜負了大家的信任,居然在最後一天忘記發文了QAQ。昨天NCPC比完真的太累了,回家直接睡著然後就隔天早上了。 總之感謝大家陪伴我完成了這三十天,雖然真的...