1. 演算法與運算

更新 發佈閱讀 1 分鐘

Lecture 1: Algorithms and Computation

課程目的

  • 解決電腦上遇到的問題
  • 證明正確性
  • 探討效率

並且很著重溝通,說服別人你做的事是正確且有效率的。

何謂電腦問題

你有輸入,需要輸出。

A輸入的正確解答是BCD輸出,解決這個問題的方法就是電腦問題。

演算法

給一個輸入,軟體或方法給一個「正確」輸出,就是演算法。

範例:學生生日相同與否演算法

方法一

記錄所有學生的生日,每次紀錄新資料時,比對已記錄資料,若有相同生日,回傳「是」。

時間複雜度:O(n)

空間複雜度:O(n)

正確性

歸納法證明

若前K名學生有人的生日一樣,在問第K+1名學生之前回傳「是」。

若K=0,則回傳「否」。

則K=K'時,會出現兩種情況:

  1. K’已回傳「是」,有相同解。
  2. K’沒有相同解,比較K’+1。

效率

衡量效率時需要顧慮電腦性能與輸入資料規模,所以不比較時間,而比較輸出答案所需的執行次數。

為此會需要用到「漸近分析」,會在之後被討論到。

預期演算法會隨著輸入大小改變輸出所需時間。

漸近符號(asymptotic notation)

大 O 符號(Big O notation):最高上限

大 Ω 符號(Big Omega notation):最低下限

大 θ 符號(Big Theta notation):上下限之間的區間

raw-image



計算模型

Word RAM

「Word」代表的是CPU可以處裡的資料量,RAM就是記憶體(Random access memory)。

現在的作業系統大多是64bits,以前是32bits。

32bits最多只能有2^32bytes的儲存空間,大約4GB。

64bits可以有2^64bytes,大約20EB,短時間內用不完就對了。

CPU

可以進行數字運算、邏輯判斷、Bitwise Operation

資料結構

前八堂課會討論資料結構,會討論儲存大資料的方法與怎麼讓CPU可以操作這些資料。

留言
avatar-img
程式貓咪
2會員
2內容數
這是MIT演算法概論的筆記
你可能也想看
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
中學數學基礎練習—一元一次方程式
Thumbnail
高中數學主題練習—對數方程式
Thumbnail
高中數學主題練習—對數方程式
Thumbnail
最近有新的訂閱者加入, 想趁這個機會再分享一次學習心法與建議給第一次練習的讀者、同學們。 如果你本身已經很熟練演算法,那隨機挑題目練習ok,可以測試觀念是否正確,並且驗證寫code的效率與正確程度。 如果是剛畢業或還在學,以前沒有打過程式競賽。 想開始有系統地增強演算法&資料結構的能力
Thumbnail
最近有新的訂閱者加入, 想趁這個機會再分享一次學習心法與建議給第一次練習的讀者、同學們。 如果你本身已經很熟練演算法,那隨機挑題目練習ok,可以測試觀念是否正確,並且驗證寫code的效率與正確程度。 如果是剛畢業或還在學,以前沒有打過程式競賽。 想開始有系統地增強演算法&資料結構的能力
Thumbnail
決斷的演算:預測、分析與好決定的11堂邏輯課 探討人類演算法的設計概念,把電腦科學解決問題的方法套用到人類日常生活的挑戰上。
Thumbnail
決斷的演算:預測、分析與好決定的11堂邏輯課 探討人類演算法的設計概念,把電腦科學解決問題的方法套用到人類日常生活的挑戰上。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News