C++進階:資料結構-APCS、LeetCode[線上課程] 線上課程

C++進階:資料結構-APCS、LeetCode[線上課程]

(※ 本課程難度較高,加上課程較為密集,建議熟悉C/C++、物件導向、指標者修習)
本課程為銜接 C/C++ 基礎班之進階課程,授課內容著重在介紹常見多種資料結構及相關之演算法,參考書目為臺灣許多大學所使用的教科書:Introduction to Data Structure,期望在課程中帶領學員了解資料結構的原理與應用,並且逐章練習相關 LeetCode 面試題與 APCS實作題 。同時也會介紹 C++ STL 裡的各式容器,例如: vector、stack、queue、list、map、set 分別使用到哪些資料結構、在不同的情況下應該優先使用哪一種。

資料結構代表函式間的介面、資料的儲存、封裝、存取過程,適合的資料結構可以大幅提高演算法的效率,因此在程式設計的過程中,選擇適合的資料結構是一項重要而且基礎的工作,同時也是程式設計師或資工系學生的必備技能之一,像是資料庫常見的索引值,函式間的記憶體分配,或是作業系統的運作本身都脫離不了資料結構,另外,資料結構也是演算法的根本。

授課時間的分配約為課堂講授(40%)、範例程式碼講解(25%)、學生練習(35%),本門課另有5次作業供學員練習,期望同學可以從大量實作與練習中形成肌肉記憶並熟悉常見資料結構的使用。

【本課程為預錄影片進行(無字幕),Office hour 為每周六的下午 14:00~16:00,會以 Google Meet進行】
【評分方式為:每周簽到 20%、作業 100%(一次20% 共5次),70分為通過標準】
【Office hour 外的發問以 E-mail 或 discord 為主】

※線上課程上課時間:於開課時間內可自行安排時間上課
影片上架進度,請參考備註欄位第(三)點線上課程常見QA連結網址

課程大綱


Class 01. C++快速複習
Class 02. 資結演算法入門
Class 03. 複雜度估算(Complexity)
Class 04. 抽象資料型別(Abstract Data Type)
===Homework 1===
Class 05. 陣列(Array)
Class 06. C++ STL簡介
Class 07. 向量(Vector)
Class 08. 鏈結串列(Linked List)
===Homework 2===
Class 09. 堆疊(Stack)
Class 10. 佇列(Queue)
===Homework 3===
Class 11. 雜湊表(Hash table)
Class 12. 二元樹(Binary Tree)
===Homework 4===
Class 13. 二元樹相關應用
===Homework 5===

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

適合對象

想了解資料結構與演算法、有面試軟體工程師或刷題需求者、準備升學APCS考試。建議國高中以上並有任一程式語言基礎(C/C++佳)。
(※ 本課程難度較高,加上課程較為密集,建議熟悉C/C++、物件導向、指標者修習)

開發環境

Visual Studio Code、Codeblocks

線上課程注意事項

●線上課程採遠距教學,無需到班上課!

●線上課程影片無字幕輔助

●線上課程為非同步教學,無法及時互動回覆,請學員需自行評估是否適合自己的學習模式。

● 上課教材、影片:開課當天會發送註冊信至信箱,註冊完畢後即可開始上課。

● 繳交作業期限:依照各班講師規定;通過課程標準才會製作證書。

● 課程影片下架日:結束日後六個月

●學員於開課後登入課程時, 登入帳號務必與報名時所填寫的EMAIL相同!!!

公務員全程參與課程學習後可於課程結束後申請登錄公務人員學習時數

 

(一)轉班或退費期限:開課日後⅓時數內,詳情連結

(二)結業狀況:查詢是否合格及證書製作進度,結業名單連結

(三)線上課程上課時間:請參考官網最新消息「線上課程常見QA」,詳情連結

(四)報名備註欄位僅可填寫優惠同行人,收據開立時間及其他問題請直接寄EMAIL向我們聯繫

近期班次

  • 第433期 招生中

    課程類別:線上課程

    開課日期:2025.01.15 ~ 2025.03.12

    學費:新生新台幣4500元整

  • 講師介紹

    (一)學歷

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

    (二)經歷

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

    (三) 研究領域

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

    (四) 使用語言

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

    (五) 教學經驗

    • 2016年至本班教學,累計授課時數至2024年3月1日為2,970小時,為資深講師。

    (六) 相關著作 區塊鏈生存指南:帶你用 Python 寫出區塊鏈!