利用30天學習資料結構與基本的演算法,並以C++實作,由於自己也仍在學習階段,因此本系列不會以艱深的理論為主,而是希望透過簡單的例子、圖解以及實作紀錄,將學習過程中的理解與整理分享給同樣剛接觸資料結構的初學者。
希望透過這 30 天的挑戰,不只讓自己更加了解基礎知識,也能留下完整的學習紀錄,與大家一起從 0 開始探索資料結構的世界!
我先來自我介紹一下! 我是Nina 目前要升大二,為了減緩我暑假的焦慮決定來報名這次的IT鐵人賽順便磨練自己,第一次參加鐵人賽請多指教 選此次的主題是想說趁著升...
我們昨天介紹了資料結構,那今天來簡單的看演算法吧!先簡單解釋一下為什麼要在資料結構的文章裡介紹演算法, 我們經常在各個地方都能看到演算法的存在,其實他沒有你想像...
那接下來我們就要解釋什麼是時間複雜度和 Big O ! 時間複雜度(Time Complexity) 時間複雜度就是工程師可以根據演算法 執行次數 來 衡量執行...
我們昨天介紹了什麼是時間複雜度,那今天來看什麼是空間複雜度吧 !☆*: .。. o*(≧▽≦)*o .。.:*☆ 什麼是空間複雜度? 空間複雜度 (Space...
我們昨天在空間複雜度簡單介紹了遞迴,那今天我們來認識他吧 ! 遞迴是什麼? 遞迴是函式直接或間接來呼叫自己的過程簡單來說,就是把大問題拆成小問題,直到問題小到可...
我們前面學了複雜度、Big O、遞迴,接下來就要開始接觸比較實際的資料結構了 ! 第一個要認識的就是陣列(Array) 什麼是陣列? 陣列結構是 一排連續的可...
延續昨天講到的array,我們來看實際的應用吧!btw 因為這篇想延續昨天介紹的 Array,而且後面還會介紹其他解法,所以這次先專注在最直覺的暴力解喔 >...
昨天我們看了陣列的題目,今天我們要來學鏈結串列 ( Linked list )我們在 Day6的時候有提到,陣列的插入和刪除很麻煩,那鏈結串列的優點就是插入和刪...
昨天介紹完 Linked List,今天來看看實際的應用吧!這題算是鏈結串列的經典入門題之一 206. Reverse Linked List 題目 Given...
前幾天我們看過了單向鏈結串列與他的實作,今天我們來看雙向鏈結串列吧 ! 昨天在做 Reverse Linked List 時,我們發現一件事: 1 → 2 →...