C++進階:資結演算法-APCS、LeetCode

本課程是銜接C/C++或Python基礎班之進階課程,課程內容著重在資料結構與演算法,帶領學員了解資料結構的原理與應用,並且練習常見的APCS實作題與LeetCode面試題。

資料結構代表函式間的介面、資料的儲存、封裝、存取過程,適合的資料結構可以大幅提高演算法的效率,因此在程式設計的過程中,選擇適合的資料結構是一項重要而且基礎的工作,同時也是程式設計師或資工系學生的必備技能之一。

演算法(algorithm)把解決問題的思路具體化,利用定義清楚的指令於解決數學計算、資料處理、自動推理,也同時比較評估做法的優劣。

課程大綱

1. 資結演算法入門
2. (資料結構)佇列 (queues)、堆疊 (stacks)
3. (資料結構)二元樹
4. (資料結構)圖論(graph)─BFS與DFS
5. (資料結構)圖論(graph)─Shortest Path
6. (資料結構)character,string、vector、map、set
7. (演算法)排序(sorting)
8. (演算法)搜尋 (searching)
9. (演算法)貪心法則 (greedy method)
10(演算法)動態規劃 (dynamic programming)

※課程內容將視實際上課情形加以增減
※本課程評分方式為LeetCode指定題數或APCS分數。

適合對象

想了解資料結構與演算法、準備升學APCS考試、有面試軟體工程師或刷題需求者。建議國高中以上並有任一程式語言基礎(C/C++,Python佳)。

開發環境

Visual Studio Code、Codeblocks

近期班次

  • 第336期 開課日期:2020.11.17 招生中

    上課時間: 週 (二)(五)
    7:00 PM ~ 10:00 PM
    上課日期:2020.11.17 ~ 2020.12.18
    學費:新生新台幣5000元整

  • 注意事項

    • 上課地點:台灣大學資訊工程學系系館 詳細位置;教室號碼將於開課前一日公佈於官網"最新消息"中。
    • 上課教材:開課後將公布教學網站給同學查閱。
    • 結業狀況:請上官網”結業名單”查閱是否合格及可領取證書進度。

    講師介紹

    • 國立臺灣大學電機工程學碩士學位
    • 國立臺灣大學機械工程學學士學位
    • 國立臺灣大學醫學系學士班

    (一) 經歷

    • IRHOCS 2015國際機器人實作競賽手臂機器人組 冠軍
    • 2015 上銀智慧手競賽佳作
    • 2020 iT邦幫忙鐵人賽 Blockchain組 冠軍

    (二) 研究領域

    • 電腦視覺 機器學習 區塊鏈 智能合約

    (三) 使用語言

    • C/C++,R,Python,PHP,Solidity

    (四) 教學經驗

    於本訓練班授課時數累計至2020年2月5日為1150小時