iT邦幫忙

鐵人檔案

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

從0開始啃Introduction of algorithms心得與記錄 系列

一個月的時間,從第一頁開始啃Introduction of algorithms,演算法學習記錄。

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

Day-11 priority queue

Priority queue Priority queue和queue一樣也有兩種形式 : max priority queue和min priority qu...

DAY 12

Day-12 決策樹(decision tree)

排序的速度 Quicksort,需要 heapsort,需要 merge sort,需要 insertion sort,需要 在前幾天的時間我們看到了這一些演算...

DAY 13

Day-13 線性時間演算法 : Counting sort

Counting sort Input : Output : Aux(auxiliary) array : Counting sort假設一個陣列中有個整...

DAY 14

Day-14 線性時間演算法 : Radix sort

radix sort(Herman Hollerith) 基數排序(radix sort)是種應用在打孔卡排序機上面的演算法,每一張卡片有80列,在每一列上機器...

DAY 15

Day-15 線性時間演算法 : Bucket sort

bucket sort(桶排序) 假設輸入平均分布,也就是輸入的陣列每一種組合情況都是機率均等的,平均情況下他的時間複雜度為。和counting sort類似,...

DAY 16

Day-16 雇用問題, 指示器隨機變數(indicator random variable), 隨機化演算法

雇用問題 假設你要雇用新的辦公助理,而你找了一個雇用代理人去幫你推薦應聘的人,雇用代理人每天會給你推薦一個人。接著你會去面試這個人,並決定是否要雇用他。 因為雇...

DAY 17

Day-17 中位數與順序統計

最大值與最小值 在一個有n個元素的,未經排序的陣列中,如果我們要找到最小值,我們可以將一個陣列進行排序,使用merge sort等等方式,接著回傳該陣列的第一個...

DAY 18

Day-18 BFPRT演算法

最壞情況為,BFPRT演算法 在由隨機數決定陣列的分割的情況下,我們如何避免產生出最差情況(雖然出現的機率很小),或是讓最差的情況時間複雜度也是。 BFPRT演...

DAY 19

Day-19 ADT與鏈結串列(linked list)

前言 鏈結串列(linked list)是由一連串的結構(由 struct 所建立的節點)所構成,每一個節點中都含有兩筆資料,分別為節點的內容和下一個節點的記憶...

DAY 20

Day-20 堆疊(Stack)

堆疊介紹 堆疊是限制插入元素和刪除元素只能在同一個位置的表(list),該位置一般來說稱為棧頂(Top)。對堆疊的基本操作有 Push(推入,將資料加到棧頂)...