iT邦幫忙

資料結構與演算法相關文章
共有 316 則文章
鐵人賽 Software Development DAY 20

技術 演算法-BFS

BFS全名Breadth-first search中文叫「廣度優先搜尋」,我個人覺得比DFS還要好理解很多,也因為他是「廣度」優先的原因,感覺就像「擴散」開來的...

鐵人賽 Software Development DAY 15

技術 Day 14 左右開通 - Doubly Linked List

Singly Linked List 與 Doubly Linked List 差別在 Node 的指標一個只有下一個節點,另個有存上下兩個節點。 Doubly...

鐵人賽 Software Development DAY 12

技術 Day 12. Tree-樹 ┏((= ̄(エ) ̄=))┛

一看到樹大家會想到甚麼勒,我會想到野餐,好想出去玩歐歐歐☆^(o´Ф∇Ф)o沒想到資料結構裡面也有樹和森林吧,他其實像是模擬現實生活中的樹幹、樹枝和葉子的樣子那...

鐵人賽 Software Development DAY 11

技術 Day 11. Queue的製作與種類

昨天介紹了用array的方式做Queue,今天來介紹用linked list製作! [法二]用linked list製作 一、single linked lis...

鐵人賽 Software Development DAY 19

技術 演算法-DFS

DFS全名Depth First Search中文叫「深度優先搜尋」,DFS是一種圖的搜尋演算法,顧名思義就是「深度」為優先去搜尋的演算法。 「深度」優先? 至...

鐵人賽 Software Development DAY 18

技術 演算法 -Tree Traversal

今天要來討論的是樹的尋訪,「尋訪」或是「遍歷」的意思就是把所有樹的節點都看過的意思啦!不曉得大家還記不記得之前學過的樹,如果忘記了可以再往前看呦。 想想看一個比...

鐵人賽 Software Development DAY 17

技術 演算法-Greedy

今天要來介紹,貪婪演算法,其實與其說貪婪演算法是一種演算法,更精確的說他更像是一種思想。貪婪演算法概念其實超級簡單,簡單到你難以想像的地步。貪婪演算法的核心就是...

鐵人賽 Software Development DAY 9

技術 Day 9. Stack的各種應用

今天再來一天Stack,昨天說到Stack的應用有很多種,今天就來舉幾個實例給大家看吧ξ( ✿>◡❛)▄︻▇▇〓▄︻┻┳═一 Stack Permutation...

鐵人賽 Software Development DAY 16

技術 演算法-Sorting

今天我們要來介紹經典的排序演算法,我還記得我大學的時候,被排序演算法搞的一頭霧水,現在再回去看會覺得:「我以前怎麼那麼笨呀。」不過我相信各位讀者,絕對都是比我還...

鐵人賽 Software Development DAY 10

技術 Day 10. Queue-佇列

歐歐終於結束Stack的部分了,接下來換來介紹Queue~我們一樣先來舉一些生活中的例子,像是我們平常要買東西、搭車等等都需要排隊,先排到隊伍中的人會先獲得購買...

鐵人賽 Software Development DAY 15

技術 演算法-Recursion

今天終於要來講遞迴的部分,其實實際上我們在撰寫遞迴的Code的時候,不會真的那麼在意每一個Call Stack的細節,我們更多的是去定義他每一層狀態的關係,我們...

鐵人賽 Software Development DAY 8

技術 Day 8. Stack-堆疊

講完了Array跟Linked list接下來我們來講Stack跟Queue吧d(`・∀・)b什麼是Stack勒,先舉一些日常生活中的例子,像是餐廳裡面洗好堆起...

鐵人賽 Software Development DAY 14

技術 演算法-Recursion先修班,先來談談Call Stack

我們花了大半時間在討論資料結構,終於從今天開始我會開始跟大家介紹我們常用的演算法,希望讀者們都還可以跟上這幾天的步調,好了那就讓我們繼續往下看下去吧! 為了讓大...

鐵人賽 Software Development DAY 13

技術 資料結構-Prefix Tree(Trie)

今天要講的資料結構叫做Trie,也可以稱作Prefix Tree,我認為他是一種比較進階的資料結構,所以我把它放到後面一點來介紹囉, 既然都叫作Prefix T...

鐵人賽 Software Development DAY 7

技術 Day 7. Circular Linked List - 環狀鏈結 &Linked List 基本操作

昨天講了單向跟雙向鏈結,今天來講最後一個!!環狀鏈結ლ(́◕◞౪◟◕‵ლ)還有講一些Linked List 基本操作的pseudo code 環狀鏈結(Circ...

鐵人賽 Software Development DAY 4

技術 Day 3 好用兩件套 - 物件與陣列的時間與空間複雜度

陣列與物件是 JavaScript 內建的資料結構,當提到一個資料結構的好壞時,我們會評斷操作該資料結構時所用的各個方法 (新增、刪除、存取或修改、查詢) 所需...

鐵人賽 Software Development DAY 12

技術 資料結構-Graph

今天要講的資料結構叫做Graph,中文稱作圖,Graph是一個相對廣泛概念並且能夠應用在很多日常生活情境的資料結構。 我們來看看Graph長怎麼樣。我們可以發現...

鐵人賽 Software Development DAY 6

技術 Day 6. Linked List -鏈結串列

Linked List (鏈結串列)◝( ゚∀ ゚ )◟ 介紹完Array接下來來看Linked List,他們可以算是好兄弟常常會一起被提到呢!陣列是屬於靜態...

鐵人賽 Software Development DAY 5

技術 Day 5. Array之特殊矩陣存放

昨天講了利用array來儲存一維,二維,三維....到n維矩陣,今天繼續來用array,我們來儲存一些酷逼八的矩陣(♛‿♛) 下、上三角矩陣 下三角矩陣(Low...

鐵人賽 Software Development DAY 4

技術 Day 4. Array-陣列

陣列是什麼 陣列屬於一種靜態的資料結構,而且他會具有以下幾種特性: 需要使用一段連續的記憶體空間來儲存 用來儲存一群相同類型的資料 可以透過索引值快速存取想要...

鐵人賽 Software Development DAY 11

技術 資料結構-Heap

希望各位讀者在昨天經歷過Binary Search的摧殘後還能保有一定的熱忱往下學習。我之所以會在資料結構的篇幅中可以安排一個Binary Search是因為有...

鐵人賽 Software Development DAY 2

技術 Day 1 這到底是什麼符號喔齁齁齁齁齁 - Big O Notation

Big O Notation 是一種表示演算法複雜度的方式。同樣解決一個演算法問題,若該算法執行的時間越少,使用的記憶體愈少,就是越好的解法。可以用來評斷該演算...

鐵人賽 Software Development DAY 10

技術 演算法-Binary Search and Log n Time Complexity

再往下介紹其他資料結構前,今天我想先來跟大家介紹一個很強大的演算法,Binary Search也叫做「二分搜尋法」,也因為在時間複雜度的章節,我怕大家剛接觸時間...

鐵人賽 Software Development DAY 9

技術 資料結構 -Tree

今天我們來看看我覺得超可愛的資料結構Tree,中文叫做樹,Tree跟LinkedList有一點像,更精確地說,LinkedList是一種特別的Tree,先不要講...

鐵人賽 Software Development DAY 8

技術 資料結構-Stack/Queue

今天來到我們資料結構的第四講,今天要討論的是Stack跟Queue,中文我們稱作堆疊(Stack)和佇列(Queue),這兩個資料結構最最最大的特點就是他很簡單...

鐵人賽 Software Development DAY 3

技術 Day 3. Asymptotic Notations-漸進式符號

昨天我們提到了資料結構跟演算法的定義及他們之間的關係,我們也可以知道,對於同一個問題,我們可以使用很多不同種類的演算法來解決他,但要怎麼判斷哪種演算法比較好呢?...

鐵人賽 Software Development DAY 2

技術 Day 2. 資料結構是什麼?演算法又是誰(´◓Д◔`)?

資料結構(data structure) 在電腦科學中,資料結構是電腦中儲存、組織資料的方式,其實就是資料加上去定義一些資料之間的關係,像是要運用什麼樣的邏輯來...

鐵人賽 Software Development DAY 7

技術 資料結構-LinkedList

LinkedList中文叫做鏈結串列,對於初學者來說會是一個相當不好學習的資料結構,想當初大學時為了用C語言來實作LinkedList在學習指標的過程真的是一波...

鐵人賽 Software Development DAY 6

技術 資料結構-HashMap/Set

Hash Map跟Set是我最喜歡的資料結構,那廢話不多說,我們就先從Set說起吧 ! Set Set就像一個大集合,我們經常拿它來使用在判定裡面有沒有我要找的...

鐵人賽 Software Development DAY 5

技術 資料結構-Array

開始進入到我們正式資料結構的環節了,首先我們先來介紹大家最熟悉的Array,Array就是一塊「連續的記憶體空間」,我們可以利用index去直接存取我們要的資料...