iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
自我挑戰組

一個月的演算法挑戰 系列

利用一個月的時間,使用JavaScript和Python將演算法練的爐火存菁。

鐵人鍊成 | 共 30 篇文章 | 18 人訂閱 訂閱系列文 RSS系列文
DAY 1

Day01:時間複雜度

剛開始,我想說點什麼 看過市面上許多解釋演算法的資料,有些書搭配圖片,有些影片淺顯易懂,為了挑戰自己以及將演算法了解透測,開始了這次的鐵人賽。 開始的時候,想要...

2021-09-01 ‧ 由 Emma 分享
DAY 2

Day02:空間複雜度

今天來聊聊,空間複雜度(Space Complexity) 空間複雜度,空間指的是在執行程式碼時所耗費的記憶體容量。空間複雜度與時間複雜度的表示方式相同,都用B...

2021-09-02 ‧ 由 Emma 分享
DAY 3

Day03:資料結構 - 列表(List)

什麼是資料結構? 前一天有提到空間複雜度(Space Complexity),簡單的複習一下,空間複雜度指的是記憶體的使用效率。今天開始談到的資料結構,是可以有...

2021-09-03 ‧ 由 Emma 分享
DAY 4

Day04:資料結構 - 陣列(Array)

閒話家常 今天來到了鐵人賽的第四天了,我們繼續來聊聊資料結構,秉持著一天弄懂一個觀念,相信30天的鐵人賽後,就會和30天前的自己不一樣。 什麼是陣列(Arra...

2021-09-04 ‧ 由 Emma 分享
DAY 5

Day05:資料結構 - 堆疊(Stack)

聊聊堆疊(Stack) 堆疊是一種後進先出(Last In First Out)(LIFO)的資料結構,換句話說,堆疊就是將數據排成一列,由下往上堆放文件,只能...

2021-09-05 ‧ 由 Emma 分享
DAY 6

Day06:資料結構 - 佇列(queue)

前言 今天聊到了佇列(queue)這種資料結構,佇列和Day5所提到的堆疊常放在一起看,他們的操作方式類似,但特性稍微有一點點的不同。 佇(ㄓㄨˋ)列(que...

2021-09-06 ‧ 由 Emma 分享
DAY 7

Day07:資料結構 - 雜湊表(Hash Table)

雜湊表,我需要那個酷東西 在線性資料結構中,若要找一個資料,花費的時間複雜度為O(n),或是可以選擇節省時間,但是耗費記憶體容量。若是兩者都不想選,那就需要Ha...

2021-09-07 ‧ 由 Emma 分享
DAY 8

Day08:資料結構 - 堆積(Heap)

談談堆積(Heap)吧! 今天來談談堆積(Heap)吧!堆積是一種特別的二元樹(Binary tree),那什麼又是二元樹?讓我們一個一個來解析。 二元樹(B...

2021-09-08 ‧ 由 Emma 分享
DAY 9

Day09:氣泡排序(Bubble Sort)

何謂「排序(Sort)」? 排序是指一組資料中,將資料以「由大到小」或「由小到大」的方式重新排列。常見的排序演算法有下列幾種: 氣泡排序法(Bubble So...

2021-09-09 ‧ 由 Emma 分享
DAY 10

Day10:選擇排序(Selection Sort)

選擇排序(Select Sort) 選擇排序是重複進行「將數列中最小值,與左邊的值對調」,一直保持由小到大的數列。 選擇排序法使用線性搜尋(Linear Sea...

2021-09-10 ‧ 由 Emma 分享