每當大家提到刷題好像都會直接聯想到工作面試感到有壓力,其實刷題可以很有趣,過程也可以學到並複習很多資料結構與演算法的概念。想要用這30天利用leetCode為主加上一些其他討論區的題目為輔,用說題的方式來解析題目背後想要考什麼,一起釐清思緒,探討厲害的前人的思維與技巧,如何把暴力解一步步優化,邁向高效解!
今天要來解一題以前數學課本第0章都會遇到也很常被我們跳躍式略過的東西。 在看這題之前我們先來了解一個名詞 Power sets:假設有一個集合 X ,我們將 X...
看完這題題目還記得小時候很常被問到:給你一些數字,請你從這些數中用最少的數,來涵蓋最多的範圍。於是我們就會拿起筆開畫數線。不過今天,我們要用程式碼來解題,沒有了...
今天的題目是要我們在一個整數陣列中找到子陣列(subarray),也就是擷取陣列中相連的一部分,求出擁有最大的總和並且回傳 而會讓題目變得複雜的原因,是因為我們...
在開始今天題目之前,先來認識一下凱撒密碼 (Caesar cipher) 凱撒密碼是一種替換加密技術,明文中的所有字母都在字母表上向後按照一個固定數目進行偏移...
這題開始之前先來介紹一下Linked list(連結串列)的資料結構。 Linked list(連結串列)使用node(節點)來記錄、表示、儲存資料(data)...
今天直接來看題目的敘述:Given the head of a linked list, remove the nth node from the end of...
這一題題目會給我們兩個Linked Lists,分別代表兩個非負整數。題目要我們把兩個數相加後回傳一個新的Linked Lists來代表相加後的和。 題目有說,...
生活上我們可能有遇過一些二分搜尋的例子。例如以前如果有當過助教的經驗,有時候我們在收學生作業時會作業按照學號由小到大排好,假設有100位學生001~100,我們...
今天一起來認識二元樹的三種遍歷方式吧!但是別急!我們先來認識二元搜尋樹BST的定義! 二元搜尋樹是一棵二元樹,如果不為空(二元樹可以為空!)則須滿足: 左子樹...
深度追蹤是刷題前一定要了解的觀念!今天就來用Depth-first-searh的方式來走訪一棵樹吧! 其實從名稱上看起來很直覺,簡單來說就是當我們走了一條路,前...