{"id":50372977,"url":"https://github.com/sonnyson-p/advanced-computer-programming-teaching-works","last_synced_at":"2026-05-30T08:03:30.770Z","repository":{"id":351621264,"uuid":"1202061272","full_name":"SonnySon-P/Advanced-Computer-Programming-Teaching-Works","owner":"SonnySon-P","description":"Advanced computer programming textbook","archived":false,"fork":false,"pushed_at":"2026-05-08T15:12:04.000Z","size":217,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-08T17:21:06.289Z","etag":null,"topics":["algorithm","cpp","data-structure","teaching"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SonnySon-P.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-05T14:46:05.000Z","updated_at":"2026-05-08T15:12:18.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/SonnySon-P/Advanced-Computer-Programming-Teaching-Works","commit_stats":null,"previous_names":["sonnyson-p/advanced-computer-programming-teaching-works"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SonnySon-P/Advanced-Computer-Programming-Teaching-Works","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonnySon-P%2FAdvanced-Computer-Programming-Teaching-Works","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonnySon-P%2FAdvanced-Computer-Programming-Teaching-Works/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonnySon-P%2FAdvanced-Computer-Programming-Teaching-Works/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonnySon-P%2FAdvanced-Computer-Programming-Teaching-Works/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SonnySon-P","download_url":"https://codeload.github.com/SonnySon-P/Advanced-Computer-Programming-Teaching-Works/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SonnySon-P%2FAdvanced-Computer-Programming-Teaching-Works/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33684419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","cpp","data-structure","teaching"],"created_at":"2026-05-30T08:03:30.593Z","updated_at":"2026-05-30T08:03:30.755Z","avatar_url":"https://github.com/SonnySon-P.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Advanced Computer Programming Teaching Works\n\n**一、動機說明：** 本課程內容係依據普通高中科技工程學群「加深加廣課程—進階程式設計」所設計，目標在於協助學生在掌握基礎程式設計能力後，進一步深化理解並拓展相關知能，培養邏輯思維與程式開發的綜合應用能力。\n\n\n**二、教學目標：** 本課程著重於程式設計中資料結構與演算法的核心概念與實作技巧，透過系統化的教學內容，引導學生掌握有效管理與處理資料的方式，並培養解決問題的邏輯思維與演算法設計能力。期能提升學生在軟體開發、競賽程式設計及後續進階學習上的應用能力與競爭力。\n\n**三、學習內容：**\n\n- 學習重點： 掌握從矩陣操作、物件導向到進階資料結構（如鏈結串列、樹、圖）的應用；深耕核心演算法，包含遞迴、搜尋排序、深度/廣度優先遍歷及動態規劃。\n\n \u003e [!Note]\n \u003e 由於內容包含矩陣與向量操作、標準與自訂模組、定義類別與建立物件、移動視窗法（Sliding Window）、堆疊（Stack）與佇列（Queue）、鏈結串列（Linked List）、哈希表（Hash Table）、樹狀結構（Tree）、圖（Graph）、排序（Sort）、遞迴（Recursion）、直接搜尋法與二元搜尋法（Binary Search）、深度搜尋法（DFS）與廣度搜尋法（BFS）、動態規劃（Dynamic Programming）等等，課程難度將依學生的先備知識水平及學習狀況，即時進行適性化滾動調整。\n\n- 學習順序： `pointer` → `reference` → `absolute` → `power` → `max-array` → `max-vector` → `degree_to_radian` → `coin_change-greedy` → `average` → `standard_deviation` → `prime-exhaustive` → `prime-trial_division` → `gcd` → `matrix_addition` → `matrix_multiplication` → `large_Integer_multiplication` → `sum_1_to_n-Iterative` → `sum_1_to_n-recursion` → `fibonacci_recursion` → `fibonacci_DP` → `knapsack_bitmask` → `knapsack_DP` → `bubble_sort` → `insertion_sort` → `bucket_sort` → `merge_sort.cpp` → `median` → `linear_search` → `binary_search` → `stack-function` → `stack-OOP` → `queue` → `function_overloading-polymorphism` → `string_matching-sliding_window` → `linked_list` → `hash_table` → `binary_tree` → `BFS` → `DFS` → `dijkstra` → `MST-prim`（還尚有其他內容，陸續整理中）\n\n**四、學習環境：** \n1. 程式語言：C++11以上版本\n2. 編輯器：Visual Studio Code\n\n**五、運行方式：**\n```bash\n  g++ -std=c++11 \u003c檔案名稱\u003e.cpp -o app\n  ./app\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsonnyson-p%2Fadvanced-computer-programming-teaching-works","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsonnyson-p%2Fadvanced-computer-programming-teaching-works","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsonnyson-p%2Fadvanced-computer-programming-teaching-works/lists"}