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

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

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

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

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

課程大綱

Class 01-1. C++快速複習
Class 01-2. 資結演算法入門
Class 02-1. 複雜度估算(Complexity)
Class 02-2. 鏈結串列(Linked List)
===Homework 1===
Class 03. 堆疊(Stack)與佇列(Queue)
Class 04. 雜湊表(Hash table)
===Homework 2===
Class 05. 二元樹(Binary Tree)
Class 06. 紅黑樹(Red Black Tree)
===Homework 3===
Class 07. 圖論(graph)─BFS與DFS
Class 08. 圖論(graph)─Minimum Spanning Tree
===Homework 4===
Class 09 圖論(graph)─Shortest Path
Class 10 圖論(graph)─TBA
===Homework 5===

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

適合對象

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

開發環境

Visual Studio Code、Codeblocks

近期班次

  • 第337期 開課日期:2020.12.22 招生中

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

    備註:

    1/1(五)元旦停課一次

  • 注意事項

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

    講師介紹

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

    (一) 經歷

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

    (二) 研究領域

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

    (三) 使用語言

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

    (四) 教學經驗

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