iT邦幫忙

演算法相關文章
共有 330 則文章
鐵人賽 自我挑戰組 DAY 25

技術 Day 25 | 演算法:排序 ( Sorting )

排序是電腦很常用到的演算法也是很經典的演算法種類,排序相關的演算法如下: ▌選擇排序法(Selection Sort) 算是比較簡單的排序演算法。會在「未排序...

鐵人賽 Software Development DAY 12

技術 Day 11 選我選我選我選我 - Selection Sort

Selection Sort 實作上是遍歷一次陣列,找出最小值,並將最小值與陣列的第一個值交換,以此類推,再遍歷一次陣列 (先前排序好的位置可以略過) 找出最小...

鐵人賽 Software Development DAY 5

技術 Day 4 BO5-1 - Frequency Counter

Frequency Counter 是一種解題技巧,它使用物件的鍵值 (Key) 來記錄陣列或字串裡面特定值的出現次數。它可以避免一直遍歷資料,可以有效減少時間...

鐵人賽 Software Development DAY 8

技術 Day 8. Stack-堆疊

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

鐵人賽 Software Development DAY 15

技術 Day 15. Binary Tree Traversal-二元樹走訪

昨天看了二元樹的表示方式,今天來看看他的走訪!! 二元樹走訪(Binary Tree Traversal) 我 定義: 拜訪Binary tree 中每個Nod...

鐵人賽 自我挑戰組 DAY 3

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

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

鐵人賽 Software Development DAY 12

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

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

鐵人賽 Software Development DAY 2

技術 【在廚房想30天的演算法】Day 02 想著想著想到一個 Big O

Aloha!又是我少女人妻Uerica!第二天了,真是令人興奮,因為後面要怎麼寫我都還沒想好啊~哈哈哈哈!昨晚躺在床上想了一夜都睡不著,一直在想...明天要吃什...

鐵人賽 Software Development DAY 21

技術 Day 20 你會分類你要先講 - Bucket Sort

Bucket Sort 和之前的 Radix Sort 有點類似,建立幾個桶子並將資料丟進去排序。而 Bucket Sort 是取區間,例如 1 號桶子裝 0...

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

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

鐵人賽 自我挑戰組 DAY 18

技術 Day 18:廣度優先搜尋(BFS)

上一回提到廣度優先搜尋的步驟是檢查圖中節點,並將與其相連的節點放入佇列中,再一一檢查。 光是這樣的文字描述,可能感覺只是線性地檢查所有節點,但其實廣度優先搜尋的...

鐵人賽 影片教學 DAY 1

技術 [Day02] 不重複元素的資料結構 Set

#771 - Jewels and Stones 連結: https://leetcode.com/problems/jewels-and-stones/...

鐵人賽 自我挑戰組 DAY 4

技術 Day 04:大O符號的含意

上一回提到大O符號表達執行時間,但對於大O符號我們可能有些疑問。 既是叫時間,那它的單位是什麼? 我們可以在演算法的例子中加入時間來比較一下。 如果今天有一個有...

鐵人賽 Software Development DAY 24
從0開始學習程式-Python 系列 第 25

技術 [Day28] 實例演練Leetcode239

Leecode 239. Sliding Window Maximum Given an array nums, there is a sliding win...

鐵人賽 Software Development DAY 4

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

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

鐵人賽 影片教學

技術 [Day07] 什麼是廣度優先搜尋法

#993 - Cousins in Binary Tree 連結: https://leetcode.com/problems/cousins-in-bina...

技術 【紅黑樹十講】總學習路徑分享

Youtube連結:https://bit.ly/33cfaZS 紅黑樹有著自我平衡的特性,透過「旋轉」與「顏色」的操作,保證著階層數的穩定。紅黑樹不僅是...

鐵人賽 自我挑戰組 DAY 30

技術 Day 30:寫在不怕演算法之後

如果說演算法讓人以更好的方法解決問題,那麼對於以程式解決問題的人而言,演算法理當能讓我們寫出更好的程式。所以隨著鐵人賽來到了終點,經過了沐浴在演算法光輝中的一個...

鐵人賽 自我挑戰組 DAY 5

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

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

鐵人賽 Software Development DAY 1

技術 前言

這是我第一次想參加鐵人30天,畢業後工作了3年左右,覺得工作上想要再進修自己不足的部份,於是開始研讀以前大學時代沒有認真學習的演算法科目。不讀還好,一讀就確確實...

鐵人賽 影片教學 DAY 1

技術 [Day04] 如何計算不包含前導零的補數

#476 - Number Complement 連結: https://leetcode.com/problems/number-complement/...

鐵人賽 自我挑戰組 DAY 30

技術 【第三十天 - 結論】

本系列文章複習了一些業界常考演算法 從中也一再的複習/整理自己所學,釐清一些概念,希望大家經過一系列的文章,都能有所收穫,再次提醒,建議練習題目時,除了...

鐵人賽 Software Development DAY 19

技術 Day 18 快還要更快 - Quick Sort

Quick Sort 使用基準值 (pivot) 比對排序,並透過 Recursion 的技巧,不斷將每個元素放到正確的位置上。 第一步是從陣列中取出一個數字當...

技術 【圖解演算法教學】二元樹 Traversal

Youtube教學影片連結:https://bit.ly/2ECHcoQ 這次帶大家深度了解二元樹(Binary Tree),我們將從DFS的角度來理解...

鐵人賽 影片教學 DAY 1

技術 [Day05] 如何將字元對應到陣列上

#387 - First Unique Character in a String 連結: https://leetcode.com/problems/fi...

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

技術 Day02:空間複雜度

今天來聊聊,空間複雜度(Space Complexity) 空間複雜度,空間指的是在執行程式碼時所耗費的記憶體容量。空間複雜度與時間複雜度的表示方式相同,都用B...

技術 科普一下顏色在不同空間轉換的意義和演算法

和大家分享一下我在製作遊戲中很常使用的HSB顏色空間。和一般我們用RGB的顏色空間不同,很大一部分的色彩學都是建立在色相上的,這支影片主要就是帶大家看一下這兩個...

鐵人賽 Software Development DAY 2

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

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

鐵人賽 自我挑戰組 DAY 5

技術 Day 05:到底有多壞?演算法的最壞情況執行時間

討論演算法的執行時間到現在,我們只提最糟糕的情況,好像不斷在強調演算法的效能可以有多差。 你可能會想,就算用線性搜尋玩猜數字,最衰最衰要猜100次,那也會有很多...

鐵人賽 影片教學 DAY 1

技術 [Day03] 用於計數的字典 Counter

#383 - Ransom Note 連結: https://leetcode.com/problems/ransom-note/ 難度: Easy 感謝大...