iT邦幫忙

algorithm相關文章
共有 320 則文章
鐵人賽 Software Development DAY 23

技術 【Day23】[演算法]-插入排序法Insertion Sort

插入排序法(Insertion Sort),原理是逐一將原始資料加入已排序好資料中,並逐一與已排序好的資料作比較,找到對的位置插入。例如:已有2筆排序好資料,將...

鐵人賽 Software Development DAY 19

技術 Day 19:1534. Count Good Triplets

今日題目 題目連結:1534. Count Good Triplets 題目主題:Array, Enumeration 分享完Binary Tree等等相關主題...

鐵人賽 自我挑戰組 DAY 22

技術 Day-22 樹(Tree), 二元搜尋樹(Binary Search Tree)

前言 對於大量的資料處理,使用串列的走訪是一種十分沒有效率的方法,其效率會根據串列的長度而不斷線性成長,也就是,而樹(tree)這種資料結構,其大部分的操作時間...

鐵人賽 Software Development DAY 22

技術 【Day22】[演算法]-選擇排序法Selection Sort

選擇排序法(Selection Sort),原理是反覆從未排序數列中找出最小值,將它與左邊的數做交換。可以有兩種方式排序,一為由大到小排序時,將最小值放到末端;...

鐵人賽 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 21

技術 【Day21】[演算法]-排序Sort & 氣泡排序法Bubble Sort

排序(Sorting) 排序(Sorting)在電腦領域中是非常普遍且重要工作,即是將一群不規格的資料按照某個規格來重新排列,讓排序過的資料容易閱讀、利於統計整...

鐵人賽 自我挑戰組 DAY 21

技術 Day-21 隊列(Queue)與循環對列(Circular Queue)

隊列(queue)介紹 隊列就如同堆疊一般,是一種線性表,與堆疊不同的地方在於,堆疊的push和pop操作都是在棧頂(Top)的地方進行操作,而隊列則是插入元素...

鐵人賽 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...

鐵人賽 自我挑戰組 DAY 20

技術 Day-20 堆疊(Stack)

堆疊介紹 堆疊是限制插入元素和刪除元素只能在同一個位置的表(list),該位置一般來說稱為棧頂(Top)。對堆疊的基本操作有 Push(推入,將資料加到棧頂)...

鐵人賽 自我挑戰組 DAY 19

技術 Day-19 ADT與鏈結串列(linked list)

前言 鏈結串列(linked list)是由一連串的結構(由 struct 所建立的節點)所構成,每一個節點中都含有兩筆資料,分別為節點的內容和下一個節點的記憶...

鐵人賽 Software Development DAY 16

技術 Day 16:108. Convert Sorted Array to Binary Search Tree

今日題目 題目連結:108. Convert Sorted Array to Binary Search Tree 題目主題:Array, Divide and...

鐵人賽 Software Development DAY 15

技術 Day 15:101. Symmetric Tree

今日題目 題目連結:101. Symmetric Tree 題目主題:Tree, Depth-First Search, Breadth-First Searc...

鐵人賽 自我挑戰組 DAY 18

技術 Day-18 BFPRT演算法

最壞情況為,BFPRT演算法 在由隨機數決定陣列的分割的情況下,我們如何避免產生出最差情況(雖然出現的機率很小),或是讓最差的情況時間複雜度也是。 BFPRT演...

鐵人賽 Software Development DAY 14

技術 Day 14:965. Univalued Binary Tree

今日題目 題目連結:965. Univalued Binary Tree 題目主題:Tree, Depth-First Search, Breadth-Firs...

鐵人賽 自我挑戰組 DAY 17

技術 Day-17 中位數與順序統計

最大值與最小值 在一個有n個元素的,未經排序的陣列中,如果我們要找到最小值,我們可以將一個陣列進行排序,使用merge sort等等方式,接著回傳該陣列的第一個...

鐵人賽 Software Development DAY 13

技術 Day 13:100. same tree

今日題目 題目連結:100. same tree 題目主題:Tree, Depth-First Search, Breadth-First Search, Bi...

鐵人賽 自我挑戰組 DAY 16

技術 Day-16 雇用問題, 指示器隨機變數(indicator random variable), 隨機化演算法

雇用問題 假設你要雇用新的辦公助理,而你找了一個雇用代理人去幫你推薦應聘的人,雇用代理人每天會給你推薦一個人。接著你會去面試這個人,並決定是否要雇用他。 因為雇...

鐵人賽 Software Development DAY 12

技術 Day 12:145. Binary Tree Postorder Traversal

今日題目 題目連結:145. Binary Tree Postorder Traversal 題目主題:Stack, Tree, Depth-First Sea...

鐵人賽 自我挑戰組 DAY 15

技術 Day-15 線性時間演算法 : Bucket sort

bucket sort(桶排序) 假設輸入平均分布,也就是輸入的陣列每一種組合情況都是機率均等的,平均情況下他的時間複雜度為。和counting sort類似,...

鐵人賽 Software Development DAY 11

技術 Day 11:94. Binary Tree Inorder Traversal

今日題目 題目連結:94. Binary Tree Inorder Traversal 題目主題:Stack, Tree, Depth-First Search...

鐵人賽 自我挑戰組 DAY 14

技術 Day-14 線性時間演算法 : Radix sort

radix sort(Herman Hollerith) 基數排序(radix sort)是種應用在打孔卡排序機上面的演算法,每一張卡片有80列,在每一列上機器...

鐵人賽 Software Development DAY 10

技術 Day 10:144. Binary Tree Preorder Traversal

今日題目 題目連結:144. Binary Tree Preorder Traversal 題目主題:Stack, Tree, Depth-First Sear...

鐵人賽 自我挑戰組 DAY 13

技術 Day-13 線性時間演算法 : Counting sort

Counting sort Input : Output : Aux(auxiliary) array : Counting sort假設一個陣列中有個整數,...

鐵人賽 Software Development DAY 9

技術 Day 9:1046. Last Stone Weight

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

鐵人賽 自我挑戰組 DAY 12

技術 Day-12 決策樹(decision tree)

排序的速度 Quicksort,需要heapsort,需要merge sort,需要insertion sort,需要 在前幾天的時間我們看到了這一些演算法,我...

鐵人賽 Software Development DAY 8

技術 Day 8:506. Relative Ranks

今日題目 題目連結:506. Relative Ranks 題目主題:Array, Sorting, Heap(Priority Queue) 前幾天結束了St...

鐵人賽 自我挑戰組 DAY 11

技術 Day-11 priority queue

Priority queue Priority queue和queue一樣也有兩種形式 : max priority queue和min priority qu...

鐵人賽 Software Development DAY 7

技術 Day 7:225. Implement Stack using Queues

今日題目 題目連結:225. Implement Stack using Queues 題目主題:Stack, Design, Queue 瞭解完Stack跟Q...

鐵人賽 自我挑戰組 DAY 10

技術 Day-10 heap與heap sort

Heap Heap(堆積)是一個陣列,可以把它看作類似完全二元樹(也就是按照順序排放的樹)。p.s : 樹是一種資料結構,大部分的操作時間複雜度平均為樹將在後面...

鐵人賽 Software Development DAY 6

技術 Day 6:232. Implement Queue using Stacks

今日題目 題目連結:232. Implement Queue using Stacks題目主題:Stack, Design, Queue 此題目主要是來了解Qu...