寫出"有效率"的程式,是每一個資訊人該具有的能力,演算法就是在有限的資源中,讓程式能夠有效執行,此次挑戰嘗試使用簡淺易懂的描述方式,逐一介紹常見、業界面試常考的演算法,帶領新手無痛入門演算法
先簡單回顧一下,今天預計分析兩個題目: Remove Duplicates from Sorted Array Two Sum II - Inpu...
Q1. 遞迴 (recursive) 是什麼? 遞迴是一種解題的方法,主要是透過「重複呼叫自身程式碼」,將大問題切成小問題來找到解答 提到 recursive...
先簡單回顧一下,今天預計分析的題目: 題目連結:https://leetcode.com/problems/merge-two-sorted-lists/...
Q1. linked list是什麼 是一種資料結構,透過很多節點(Node)串接成一個 linked list 型態的資料。 以 python 宣告的 Li...
先簡單回顧一下,今天預計分析的題目: Swap Nodes in Pairs 題目連結:https://leetcode.com/problems/s...
Q1. 動態規劃(Dynamic Programming)是什麼 ? Dynamic programming,簡稱DP,是一種多階段決策出最佳解的方法,他會...
先簡單回顧一下,今天預計分析的題目: 53. Maximum Subarray 題目敘述:https://leetcode.com/problems/m...
Q1. binary tree 是什麼 二元樹 (binary tree) 是一種資料結構,應用非常廣泛,是資訊人必學的基礎概念 二元樹是圖論中的一種樹,這種...
先簡單回顧一下,今天預計分析的題目:94. Binary Tree Inorder Traversal 題目敘述:https://leetcode.co...
Q1. Graph 是什麼 Graph 定義:一個 graph 由 數個點( vertex )與數個邊( edge ) 組成 圖形的表示有兩種方法:相鄰矩陣...