iT邦幫忙

2024 iThome 鐵人賽

DAY 1
0

緣起

又來到了痛苦的鐵人賽發文季,老實說忘記去年為何沒參加了XD
不過最近剛好在上線上課程資料結構與演算法 (JavaScript),覺得可以來記錄一下,順便看看30天內到底做了&學了什麼,文章內容可視為該線上課程的相關筆記或相關衍生物,另外本人沒有業配也沒有任何推薦碼,同時我也購買了另一門演算法的課程,若有時間也會慢慢上完,或許之後有時間會將這系列補充的更完善

發文的目標是希望藉由每天發文的壓力,讓自己在學習的路上再精進一些~

另外因為本人學識尚淺,所以在『數學的部分不會提到太深入』的內容,關於各種排序法如何證明其Big O的部分,在此系列筆記中會直接跳過,只針對其排序法的特色、實作場合跟 implementation 進行描述,誠如標題所述的基礎、入門

撰寫的模式會採取中英文夾雜的模式,某些篇章或術語老實說我不知道怎麼用中文描述,可能英文的比重會有點多~雜亂的部分還請見諒

關於較深入的部分,諸如驗證演算法複雜度或是 deep looking of algorithm 的話,請不要看我的紀錄
網路上有其他更深入的數學相關資源跟其他大神的解說
這系列比較適合幾乎無基礎且數學爛如我的人XD

另外因為我比較熟的語言是javascript,所以 implemention of algorithm 都會以 js 為主,如果你想看其他種語言的寫法,請移駕他處或等我學但也可能永遠等不到

那就開始吧~

先從早已經還給老師的高中數學開始回顧

對數


base=底數,argument=真數
如果沒寫底數,底數就是10,base 不可為1且需是正數
argument 需大於 0

log 10 = log 10 of 10 = 1
log base 2 of 16 = 4 也就是 2的4次方=16

對數公式

僅列出基礎且後面可能會出現的
log base a of b*c = log base a of b + log base a of c
log base 1 of b/c = log base a of b - log base a of c


log a raised of b = b * log a (log a的b次方= b*log a)


log base a of b = 1/log base b of a

對數的圖形

穿過(1,0),且趨近於某數字

n! 階層

n! 就是 1*2*3*...*n
6! = 1*2*3*4*5*6 = 720

算總和的公式

1+2+3+4+...+n= n*n/2 + n/2

這些就是後面會一再出現的數學相關內容
先理解這部分在之後的理解會稍微輕鬆一點~

相關資源

Logarithms - Formulas
https://youtu.be/tzBIyIKLtWE?si=3CcPCqgChO5OvTYt
desmos
https://www.desmos.com/calculator?lang=zh-TW
資料結構與演算法 (JavaScript)
https://www.udemy.com/course/algorithm-data-structure/


下一篇
何謂演算法與判斷演算法的『好或壞』-day2
系列文
演算法與資料結構入門:30天基礎學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言