排序(Sorting) 排序(Sorting)在電腦領域中是非常普遍且重要工作,即是將一群不規格的資料按照某個規格來重新排列,讓排序過的資料容易閱讀、利於統計整...
合併排序法(Merge Sort)原理是會先將原始資料分割成兩個資料列,接著再將兩個資料繼續分割成兩個資料列,依此類推,直到無法再分割,也就是每組都只剩下一筆資...
插入排序法(Insertion Sort),原理是逐一將原始資料加入已排序好資料中,並逐一與已排序好的資料作比較,找到對的位置插入。例如:已有2筆排序好資料,將...
上篇介紹 ANN 魔法陣結構:輸入層(Input Layer)、隱藏層(Hidden Layer)及輸出層(Output Layer)。此外,也解釋了神經元與激...
在上一篇前言提到 AlexNet 是一個歷史分水嶺,這是由於在 AlexNet 之前,Deep Learning 已經沈寂很久,而在2012年的 ImageNe...
選擇排序法(Selection Sort),原理是反覆從未排序數列中找出最小值,將它與左邊的數做交換。可以有兩種方式排序,一為由大到小排序時,將最小值放到末端;...
快速排序法(Quick Sort)又稱分割交換排序法,是目前公認效率極佳的演算法,使用了分治法(Divide and Conquer)的概念。原理是先從原始資料...
樹的高度(height of the tree) 在Binary Search tree中,我們知道我們可以在的時間內,完成Delete, find min,...
第一個魔法陣:Artificial Neural Network (ANN, 1943) 首先先來看看 ANN 的結構: 圖片來源:https://hack...
演算法概述 演算法(Algorithm)是為完成任務而下達的一組提示,每一個程式碼都是一種演算法。 O(Big O Notation):演算法的執行時間,不以秒...
2012年,Alex Krizhesky 和 Geoff Hinton 提出的 AlexNet 在 ImageNet 的圖像分類競賽中以巨大優勢贏得冠軍,使 C...
Recurrent Neural Network(RNN)是神經網絡的一種,常應用在處理時間、空間序列上有強關聯的訊息,尤其在 NLP (Natural Lan...
本系列文章同步分享於個人Blog → Informistry-HankLee 前言 第二天我們介紹了針對演算法執行效率(Time Complexity)進行了說...
剛開始研究 deep learning 時,正好是 AlphaGo 跟南韓棋士李世乭對戰(2016年3月8日到3月15日)的前一兩個月,那時我們小組嘗試用 CN...
希爾排序法(Shell Sort)是插入排序(Insertion Sort)的改良版。可減少插入排序的資料搬移次數,加入了間距(Gap)的概念將資料分成多個小區...
本系列文章同步分享於個人Blog → InformisTry-HankLee 前言 應該有人跟我一樣真心覺得Brute Force其實看起來也沒什麼,就都是很簡...
前言 比較合併排序法與插入排序法,一旦輸入n的規模足夠大時,合併排序在最壞情況所需的時間Θ,而插入排序法在最壞情況所需的時間為Θ,當n足夠大時,合併排序法的效率...
Priority queue Priority queue和queue一樣也有兩種形式 : max priority queue和min priority qu...
隊列(queue)介紹 隊列就如同堆疊一般,是一種線性表,與堆疊不同的地方在於,堆疊的push和pop操作都是在棧頂(Top)的地方進行操作,而隊列則是插入元素...
本系列文章同步分享於個人Blog → InformisTry-HankLee 前言 昨天介紹Distribution Sort的時候提到了Map/Diction...
今天是本系列進入 JavaScript 主題的第一天,那麼就先寫個 前陣子面試 時遇到的快速排序法吧! 本系列文已經重新編校彙整編輯成冊,並正式出版囉!《前...
挑選一個排列組合的題目,希望各位看完可以稍稍理解排列組合的題目該如何去解析適合用程式碼實作的解法 在演算法中,排列組合算是相對容易的一個常見問題,因此我們第一個...
Heap Heap(堆積)是一個陣列,可以把它看作類似完全二元樹(也就是按照順序排放的樹)。p.s : 樹是一種資料結構,大部分的操作時間複雜度平均為樹將在後面...
搜尋(Search) 就是從一群資料中找出符合某些條件的資料,當資料量非常龐大時,如何在短時間內有效率地找到所要的資料,因此,搜尋演算法就變得相當重要。 線性...
本系列文章同步分享於個人Blog → InformisTry-HankLee 前言 有些時候就是有一些無聊的問題想要解決,才會發展出一些簡單的演算法,然後才會進...
程式設計中資料結構與演算法是非常重要的兩大項目,彼此之間都會影響程式的運作。 資料結構 電腦在儲存資料時,會儲存在電腦的記憶體中,而資料可以有不同的儲存與組織...
FizzBuzz 問題 給一個整數 n請列印出 1~n 的每一個整數,但是 當整數可以被 3 整除的時候印出 Fizz 來代替原本要印出的數, 當整數可以被 5...
嗨大家好,這系列的文章主要是想紀錄我在寫 Leetcode / AlgoExpert 的題目時的一些所思所想,跟大家分享之餘也做個筆記,方便日後需要的時候可以回...
#1 Two Sum medium版本 題目原文 Given an array of integers, return indices of the two n...
本系列文章同步分享於個人Blog → InformisTry-HankLee 前言 當在設計一個演算法的時候,倘若使用到了Tree這種資料結構,絕大部分的情況下...