寫程式算階乘,關於階乘的三兩事 2022 年 10 月 27 日 Magic Len 研究分享、 Go、 Java、 數學邏輯、 Rust、 JavaScript 正整數的階乘(Factorial)是小於或等於該數的所有正整數的乘積,若正整數為N,用N!來表示N的階乘。至於0!是階乘的特例,它被定義為1。階乘的運算具有遞迴(recursion)概念,常作為學習程式邏輯的材料,而這篇文章將會說明階乘相關的程式計算。 繼續閱讀
如何將遞迴函數改成迭代函數? 2020 年 6 月 11 日 Magic Len 研究分享、 Go、 Java、 Rust、 JavaScript 遞迴(Recursive)函數是在執行的過程又會直接或間接地呼叫自己本身的函數。通常透過遞迴函數可以快速地驗證我們的演算法,用簡短的程式碼處理複雜的問題,但是函數在呼叫時需要建立新的堆疊框(Stack Frame),除了會需要額外的開支(Overhead)之外,如果在函數中呼叫函數,而這函數又會呼叫函數,持續下去,很容易就會造成堆疊溢出(Stack Overflow)。雖然有些程式語言的編譯器會做... 繼續閱讀