作為程式入門小白,想進一步了解資料結構與演算法。本次參賽會以udemy上的課程: The complete Data Structures and Algorithms Course in Python 為主,其餘書籍為輔來撰寫30天的閱讀筆記。
一個程式可以說是由資料結構與演算法共同組成...... 什麼是資料結構? 資料結構為將資料在記憶體中儲存與管理的方式。它影響資料存取、讀取、修改、刪除的效率。對...
Array (陣列)首先,我們先從簡單常見的資料結構介紹(前面幾篇都是簡單常見的資料結構介紹,覺得無聊的其實完全可以跳過~~),Python 內建的資料結構並無...
Dictionary (字典)Dictionary像是一個儲存的容器,沒有順序性,每個元素由一個key和value組成,value可以是另一個dictionar...
為了後面學習其他資料結構像是linked list、tree等等,我們需要學一下物件導向程式設計,也就是大家耳熟能詳的OOP。很多時候,我們想要多個物件有多個類...
Linked list是一種線性序列,其將資料儲存於節點(Node),隨機且不連續的存於記憶體中,每一個節點有指向下一個節點的指標。(見圖1)其好處是,不像前面...
昨天我們介紹單向鏈結串列(singly linked list),不同於單向鏈結串列,雙向鏈結串列(doubly linked list)的每個節點會也多一個指...
Stack堆疊, 顧名思義其資料結構猶如堆疊般,最先放進去的資料最後才能取得(First-in last-out, FILO),最後放進去的資料,可以最先取得(...
Queue(佇列)這種資料結構就像排隊一樣,先來的先出去(FIFO,First in First Out),後來的後出去(LILO,Last in Last O...
遞迴的特徵是函式透過不斷呼叫自己,使問題變得越來越小,直到達到base condition停止,而解決問題。他常被用在divide and conquer, g...
Tree (樹) 樹狀結構(tree)是一個非線性、有階層關係(hierarchical relationship)、非循環的資料結構。每個節點有的參數為其本身...