未完

codelearner 發表在 痞客邦 留言(0) 人氣()

為什麼這三個運算要放在這裡一起討論呢?
原因是這三個在大數運算中 算是較為簡單的 
如果想要了解除法和餘數運作
可以參考這篇 http://codelearner.pixnet.net/blog/post/131503030

codelearner 發表在 痞客邦 留言(0) 人氣()

霍夫曼編碼是一種編碼方式 
英文版維基百科有他的圖解 http://en.wikipedia.org/wiki/File:Huffman_huff_demo.gif

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解
隊列(或者叫佇列)是一種資料結構 具有以下特性:
● 先進先出 (First-In-First-Out / FIFO)
● 插入(Insert)必發生在尾端(Rear) 而刪除(Delete)必發生在前端(Front)

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解
這題即是用1^2 + 2^2 + ....... + n^2 之公式
所以利用 n(n + 1)(2n + 1) / 6 即可
 

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
這題很直觀 我的做法是
先判斷起始是否為奇數 是的話 直接從頭相加
欲相加數加二加二跳 直至到終止條件為止

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解
建一個min heap 每次從中取兩個元素出來 並推回相加後結果
另外 用"cost"變數記載花費
 

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
堆排序法 平均時間複雜度Θ(n lg n) 最差最優都是O(n lg n) 
概念就是當資料一個個讀進來時
就用"插入" (Insert)建構一個最大堆 

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
堆是一種資料結構 具有以下特性:
●  堆中某個節點值總是不大於或不小於其父節點值
● 必定是一棵完全樹

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
快速排序法 平均時間複雜度 O(n lg n) 但最糟測資會到 O(n^2) 非為一個stable sort
但總體來說 被公認為最有效率排序演算法
其實C語言函式庫內就有提供 但這裡要做一個實做來了解內部運作

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
插入排序法 時間複雜度 O(n^2) 為一個stable sort
假設一筆資料 5 6 4 89 25 33 8
用此排序法 從六開始 (所以從陣列第二個元素開始)

codelearner 發表在 痞客邦 留言(0) 人氣()

A 講解:
二元搜尋法 時間複雜度 O(lg n)
想法就是一次刪減掉一半資料做搜尋

codelearner 發表在 痞客邦 留言(0) 人氣()

1
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。