今天來討論最短路徑的另一個演算法,Dijkstra Algorithm。主要內容是指定一個點 (源點) 到其餘各個頂點的最短路徑,也稱作「單源最短路徑」。我們用...
有鑒於昨天學的泡沫排序法,效率篇低,就有某位聰明的科學家發明了快速排序法,其實也有用到一點二元分類的概念。 快速排序 (Quick Sort) 的想法是說,先找...
先說說什麼是分群?分群就是對所有數據進行分組,將相似的數據歸類為一起,每一筆數據的能有一個分組,每一組稱作為群集 (Cluster)。那分類根據什麼來定義,常用...
不論是之前提到過的 Floyd-Warshall 或 Dijkstra 演算法,雖然都很好用也好理解,但卻有一個缺點是無法解決帶有「負權迴路」 (或稱「負權環」...
好啦,討論完幾個演算法後,還是得面對最重要的核心,資料結構。(頓時有種醜媳婦見公婆的概念 該來的還是要來~) 其實資料在程式語言中有很多種型態,像是 int (...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 上次的練習我們就不驗收了,相信大家應該可以做得好的XD!今天我們來聊聊Python的圖形...
網路上有各式各樣的地圖出現,背後的運算就有很多的演算法、資料庫和參數來支持。還記得之前討論過有關圖的深度及廣度搜尋,就有提到過怎麼找最短的路徑,而這只是其中最基...
在討論費氏搜尋之前,要先了解一下費氏數列。 費氏數列 (Fibonacci numbers),又稱費波那契數列,是指在一串數字中,每一項是前兩項的和。數學上的定...
並查集又稱不相交集資料結構,其實是之前討論過的資料樹的延伸。剛開始的樹每一個都是獨立的,一棵樹只有一個節點。在透過尋找相同的根節點 (root),來將這些樹逐漸...
拉蒙碎碎念 其實昨天的桶子演算法雖然直覺、簡單好懂,但也遺留了一些問題。舉例來說如果資料很大,就會很浪費空間,或者當資料有小數的時候,沒辦法產生相對應的桶子。因...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 因為按照慣例,第三十天主要會講比較偏向結論性質的東西,包含接下來可能的學習方向以及建議,...
Serverless 介紹 前言 那因為現任公司的服務都是基於 AWS,如此這般我就接觸到 Serverless(以下簡稱 sls) 這個框架啦 (想更深入了...
今天來講一個「非比較性」的演算法,基數排序法 (Radix Sort)。其實之前的排序法也是屬於 非比較性 的演算法。怎麼說?以泡沫和快速為例,這兩個演算法都是...
還記得之前討論過的樹嗎?都會分成左子樹和右子樹,而二分搜尋也是遵循這樣的邏輯來運算的。 二分搜尋 (Binary Search) 是取 已排序資料的中間索引的值...
Pyenv 基本使用方法 安裝 Pyenv (macOS) 安裝 Pyenv (macOS) 需要輸入下面的指令 brew update brew instal...
拉蒙碎碎念 還記得以前剛學程式設計的時候,老師都會從幾個較簡單的演算法教起,讓學生比較好學也快上手。其實演算法就是在學邏輯,語法啊、技巧啊,我個人倒覺得是其次。...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 接下來我們要聊到日期與時間的處理相關模組:datetime跟time。請想像一下,在人生...
最近專題需要,所以找了些 OpenCV 的相關資訊來研究研究首先第一步就是建置環境只是光這天殺的環境我就搞了一整天...不過天公疼憨人,最後還是讓我給建好了!...
前言 昨天我們使用了 Python 自然語言處理套件 spaCy 預訓練好的 word embedding model 將英文單詞轉換成為高維度的向量。今天就讓...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 第二天的文章,我們來介紹Python的起源和基礎安裝流程。 Python的創始人是吉多·...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 從前從前,有個聰明的小男孩叫高斯,有天老師有事情要忙,出了一道算術題給全班慢慢寫:1+2...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 接下來讓我們來聊聊Python在深度學習的部分。事實上很多iT邦幫忙的神人們在AI &a...
前言: 在公司攥寫Web,因為自己想要使用Python,決定挑Django這套來去開發,一開始一直當魯小小去說服最資深的前輩,最後終於成功了(他受不了),但是開...
講了幾天的資料結構,先來講幾個有關搜尋的演算法,之後再繼續接回資料結構的其他部分。 循序搜尋 (Sequential Search),說白了就是在已排序的資料中...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 我們先來看看昨天的練習吧!一般來說,我們可以先打開來觀察,將其複製到JSON Onlin...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 我們先來解昨天的練習吧!我們整理一下三種解的寫法,並且分別改名成cs1, cs2, cs...
前言 這篇文章將實作使用pymongo連接MongoDB。 安裝 MongoDB MongoDB是一個文件導向、NoSQL之資料庫,使用的數據類型 BSON(類...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 昨天的題目,請參見下面的解法:https://ithelp.ithome.com.tw/...
註:本文同步刊載在Medium,若習慣Medium的話亦可去那邊看呦! 今天我們要來介紹的是Matplotlib,對於Python來說,是一套非常常用於科學繪圖...
廣度優先搜尋 (Breadth-first Search),也稱之為寬度優先搜尋。和深度優先搜尋不同的是,深度優先是透過函數的遞迴來延伸運算,而廣度優先則是透過...