Youtube連結:https://bit.ly/3inN3zI 紅黑樹的新增觀念,涵蓋「旋轉」與「顏色」兩樣重要操作,總計共有四種新增處理狀況,並且彼此...
從後面往前面比對 text = 'QQQA23B23' pattern = 'B23' # 長度 n = len(text) m = len(pattern)...
Recursion 的定義是一個會呼叫自己的函式。 Recursion 技巧在很多地方都有用到,例如: JSON.stringify & JSON....
我們透過 LeetCode #412 Fizz Buzz 來實際感受解決問題的過程 ( 題目連結 ) 一、理解題目 輸入:一個正整數 從 1 到 n,依序判斷...
先前看到了常見執行時間的圖形,線條越平代表演算法速度越快,越陡則代表越慢。 我們會發現O(log n)的二分搜尋其實算是數一數二快速的演算法,不過二分搜尋的條件...
先簡單回顧一下,今天預計分析的題目: 題目連結:https://leetcode.com/problems/find-the-city-with-the...
先簡單回顧一下,今天預計分析的題目: 題目連結:https://leetcode.com/problems/design-twitter/ 題目敘述 設計...
對於軟體工程師來說,演算法絕對是很重要的。既然早晚都要學,不如就趁早開始面對它吧(所謂早死早超生) 這系列文章主要是 LeetCode 的解題筆記,每天會有一些...
Linear Search Linear Search 非常常見,甚至在學迴圈時就已經用過了。以下直接給範例練習! Practice - Linear Sear...
Linked List (鏈結串列)◝( ゚∀ ゚ )◟ 介紹完Array接下來來看Linked List,他們可以算是好兄弟常常會一起被提到呢!陣列是屬於靜態...
一、資料結構的定義"資料結構與演算法"是程式設計最佳化的”方法論” 名詞解釋:資料:未經處理的文字、數字、符號、模型資訊:以特定方法有系統的...
Merge Sort 是一種透過切分資料再一一合併的排序演算法。 Merge Sort 有使用到 Divide and Conquer 與 Recursion...
先簡單回顧一下,今天預計分析的題目: 53. Maximum Subarray 題目敘述:https://leetcode.com/problems/m...
在 Day 1 我們講到的複雜度表示都是指時間複雜度,在輸入的參數越多越大的情況下,所要執行的步驟(執行所需花費的時間)的增長趨勢。 我們也可以使用 Big O...
昨天介紹了用array的方式做Queue,今天來介紹用linked list製作! [法二]用linked list製作 一、single linked lis...
有一些演算法是在圖(graph)上操作,我們可以先想一些實際的例子,例如: 開車的時候,使用導航系統找到最短路徑抵達目的地。 下棋的程式知道如何利用最少...
先簡單回顧一下,今天預計分析的題目: 997. Find the Town Judge 題目連結:https://leetcode.com/proble...
作為大多數人一開始學程式就學到的搜尋演算法,不過多引入介紹,這邊主要提一些基本概念 線性搜尋法 Linear Search 又稱循序搜尋法,這是最直觀的方法(把...
首先我們要引入一個問題,我要求一個陣列中從頭到某一項的和要怎麼辦呢? 這邊默認第幾項都是口語上的用法,也就是首項是第 1 項 你會說簡單啊,直接遍歷陣列不...
筆記: 【演算法新手村】[初階]筆記02 - 初識二分之常見問題 題目翻譯(by Gemini) 給定一個已排序且元素皆不重複的整數陣列,以及一個目標值(ta...
您的訂閱是我製作影片的動力訂閱點這裡~ 若內容有誤,還請留言指正,謝謝您的指教
筆記: 【演算法新手村】[初階]筆記03 - 二分練習題 題目翻譯(by Gemini) 給定一個非負整數 x,回傳 x 的算術平方根,並無條件捨去至最接近的...
前置知識:【演算法新手村】[初階]筆記01 - 初識二分之二分搜尋配合使用效果更佳喔XD 二分搜尋的題目有不少,這邊講一些簡單的(難的跳過,請新手上路者放心食...
筆記: 【演算法新手村】[初階]筆記03 - 二分練習題 題目翻譯 所謂的峰值元素(Peak Element),是指一個其值嚴格大於左右鄰居的元素。給定一個下...
problem 輸入為一個不為空的字串,回傳該字串是否為回文 (palindrome)。所謂回文是指從前到後和從後到前寫法一樣的字串,只有一個字元的字串也是回文...
problem 輸入為一陣列,回傳陣列是否為單調陣列 (monotonic array)。 單調陣列有兩種情況:陣列為單調遞增 (非遞減),或單調遞減 (非遞增...
書接上回:【演算法新手村】[初階]筆記02 - 初識二分之常見問題 二分答案會有點困難,可以多思考,只要能掌握那怕毛皮,那你也是終於"略懂"...
打磚塊可能是很多老師給初學程式的學生的第一個練習專案,雖然我以前沒經過這個階段,但還是來分享一下和打磚塊相關的演算法以及使用Typescript實作的Live...
problem 輸入為一個二元樹,將它左右反轉後回傳。 二元樹如下結構,每一個 BinaryTree 節點有一個整數值 value,左子節點 left,右子節點...
Question link: https://leetcode.com/problems/repeated-substring-pattern/ class S...