iT邦幫忙

資料結構與演算法相關文章
共有 268 則文章
鐵人賽 自我挑戰組 DAY 24

技術 Day24:Enumeration - 列舉法

列舉法又稱為窮舉法,簡單來說就是把所有可能發生的狀況都列出來,再根據問題提供的條件,從中找出符合條件的解答,也就是所謂的暴力破解法,優點是簡單直觀,缺點就是當...

鐵人賽 Software Development DAY 27

技術 Day 27:572. Subtree of Another Tree

今日題目 題目連結:572. Subtree of Another Tree 題目主題:Tree, Depth-First Search, String Mat...

鐵人賽 Software Development DAY 28

技術 [One Punch 一拳搞定前後端面試] DAY-28 - Bubble Sort

Bubble Sort 給一個裡面都是整數的陣列,請由小到大排列,回傳新的陣列。 Bubble Sort 又稱氣泡排序法,最簡單的排序法,但並不是最有效率的。...

技術 【圖解演算法教學】Bubble Sort 的大隊接力賽

Youtube連結:https://bit.ly/38xDPdR 這次首次嘗試以「動畫」形式,來演示Bubble Sort演算法的轉變過程。我們將透過...

鐵人賽 Software Development DAY 29

技術 [One Punch 一拳搞定前後端面試] DAY-29 - Selection Sort

Selection Sort 選擇排序法 選擇排序法,又稱為「證明我是錯的」排序法。 本文同時發布於好讀整理版 證明我是錯的排序法 為什麼叫證明我是錯的排序...

鐵人賽 Software Development DAY 9

技術 Day 9:1046. Last Stone Weight

今日題目 題目連結:1046. Last Stone Weight 題目主題:Array, Heap(Priority Queue) 今天的重點一樣在Heap...

鐵人賽 自我挑戰組 DAY 3

技術 【Day 03】如何評估演算法的效率? Big O 與時間複雜度

一、如何判斷演算法的效能 ? 當同樣的問題,可以用不一樣的演算法來解決時,要如何判斷哪個演算法比較好 ?可以使用以下兩個評量指標: 花的時間少,所需步驟少 (...

鐵人賽 Software Development DAY 21

技術 [One Punch 一拳搞定前後端面試] DAY-21 - Tree 結構

Tree 資料結構 本文同時發布於好讀整理版 Tree 是一種資料結構 Source from wikipedia 最上面會只有一個 Node (節點),...

鐵人賽 Software Development DAY 18

技術 Day 18:501. Find Mode in Binary Search Tree

今日題目 題目連結:501. Find Mode in Binary Search Tree 題目主題:Tree, Depth-First Search, Bi...

鐵人賽 Software Development DAY 26

技術 [One Punch 一拳搞定前後端面試] DAY-26 -Binary Search Tree - Insert

Binary Search Tree Insert 題目: 給一個值 x,請將這個值放到 Binary Search Tree 中適當的位置。 本文同時發布於...

鐵人賽 Software Development DAY 13

技術 Day 13. Binary tree-二元樹

昨天介紹了很多跟樹狀結構有關的名詞,今天開始介紹不同種類的樹吧ヽ(✿゚▽゚)ノ 二元樹(Binary Tree) 定義 可以為空集合 若不為空,則有root及...

鐵人賽 Software Development DAY 20

技術 [One Punch 一拳搞定前後端面試] DAY-20 - addLast & getAt

LinkedList addLast & getAt 本篇要來介紹 LinkedList 的 addLast() & getAt() addL...

鐵人賽 自我挑戰組 DAY 5

技術 【Day 05】LeetCode:Plus One ( 用 JavaScript 學演算法 )

我們繼續透過 LeetCode #66 Plus One 來實際感受解決問題的過程 ( 題目連結 ) 一、理解題目 輸入:一個正整數組成,且從大到小排序好的陣...

鐵人賽 Software Development DAY 4

技術 【在廚房想30天的演算法】Day 04 來淺談一下空間複雜度

Aloha!我是中秋節沒有肉烤的少女人妻 Uerica!今年連假沒什麼跟朋友相聚的機會,還收到一堆月餅,根本在考驗意志力。半夜想偷吃月餅的時候我都會 googl...

鐵人賽 自我挑戰組 DAY 20

技術 Day20:[排序演算法]Selection Sort - 選擇排序法

在了解快速排序法的概念之前要先理解partition演算法,不過單用文字敘述還是蠻抽象的,所以搭配示意圖來做說明,假如現在有個陣列[2, 6, 3, 9, 1,...

技術 Binary Search

二元搜尋BigO(log n) 相較於線性搜尋時間複雜度實在好太多 必須是被排序好的 由於每次對半砍,所以為log n 點我看GIF let array1...

技術 【圖解演算法教學】【Tree】二元樹遍歷 vs LeetCode 501 找眾數

Youtube連結:https://bit.ly/3m1VQWV 在我們了解Binary Tree的三種遍歷(Traversal)方式之後,我們要利用其中...

技術 InterSection

InterSection(集合) 以下會來實作怎麼找尋兩個array的集合 先使用兩個迴圈來實作BigO(n^2) let array1 = [1,2,3,4...

鐵人賽 Software Development DAY 27

技術 [One Punch 一拳搞定前後端面試] DAY-27 -Binary Search Tree - Contains

Binary Search Tree Contains 找二元搜尋樹裡面的 node。 題目: 給一個值 x,請在 Binary Search Tree 內搜尋...

鐵人賽 Software Development DAY 30

技術 Day 29 走囉~高歌離席~ - Graph Traversal

當要取得、更新、檢查 Graph 裡所有的節點時就會需要用到 Traversal 方法,常見的使用場景為點對點的網際網路、網站爬蟲、導航、迷宮問題或遊戲類的 A...

鐵人賽 Software Development DAY 17

技術 Day 17:700. Search in a Binary Search Tree

今日題目 題目連結:700. Search in a Binary Search Tree 題目主題:Tree, Binary Search Tree, Bin...

鐵人賽 Software Development DAY 20

技術 Day 20:1566. Detect Pattern of Length M Repeated K or More Times

今日題目 題目連結:1566. Detect Pattern of Length M Repeated K or More Times 題目主題:Array,...

技術 資料結構與演算法[3] - List和SortedList與BinarySearch

比對List和SortedList 比對容器 List SortedList 比較方法 資料放入容器的時間 演算法處理時間 開始測試 演算法 - Bin...

鐵人賽 自我挑戰組 DAY 15

技術 Day 15:樹(tree)

樹是一種抽象資料結構,跟鏈結串列一樣是由節點組成的資料集合。它的形狀類似家族樹,或者說像向下生長的樹,最上面有一個根節點(如下圖A),每個節點都可以有零個或多的...

鐵人賽 Software Development DAY 23

技術 [One Punch 一拳搞定前後端面試] DAY-23 - Tree Breadth First Traversal

Tree - Breadth First Traversal 本文同時發布於好讀整理版 上一篇我們提到有 2 種遍歷 Tree 的方式,Breadth Fi...

鐵人賽 Software Development DAY 4

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

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

鐵人賽 Software Development DAY 4

技術 一步步來談時間複雜度

時間複雜度是一個會讓大家瑟瑟發抖的主體,在這邊我會用引導的方式讓大家去了解時間複雜度的概念,也希望大家讀完這篇文章後,往後在遇到時間複雜度的時候不會那麼陌生及害...

鐵人賽 自我挑戰組 DAY 10
一個月的演算法挑戰 系列 第 10

技術 Day10:選擇排序(Selection Sort)

選擇排序(Select Sort) 選擇排序是重複進行「將數列中最小值,與左邊的值對調」,一直保持由小到大的數列。 選擇排序法使用線性搜尋(Linear Sea...

鐵人賽 Software Development DAY 6

技術 資料結構-HashMap/Set

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

鐵人賽 Software Development DAY 5

技術 Day 5:20. Valid Parentheses

今日題目 題目連結:20. Valid Parentheses題目主題:String, Stack 玩了幾題排序後,接下來會分享兩種重要的資料結構Stack &...