白話的 Hash Table 簡介

前言最近因緣際會,複習了一些基礎的資料結構。在看到 Hash Table 的時候,也順便看了一下他的時間複雜度。不看還好,一看不得了,怎麼那麼小 (插入元素、移除元素跟找某個元素大概都只要 O(1) 的時間複雜度)!所以想要用很簡潔白話的方式說明一下 Hash Table 這個好用的資料結構。 簡介 Hash TableHash Table 是儲存 (key, value) 這種 mapping 關係的一種資料結構,從圖中可以很清楚地看

Read More...

JavaScript 101 快速入門教學

前言Java 和 JavaScript 雖然名稱相似,但卻是熱狗和狗的差別。JavaScript 是由 Netscape 工程師 Brendan Eich 於 1995 年僅花 10 天所設計的程式語言,也因為一些歷史因素,JavaScript 成為被誤解最深的程式語言。JavaScript 是一種直譯式、基於原型(prototype based)的物件導向程式語言,但又具有函數式程式設計(Functional programming

Read More...

2017,讓我們再來看看 Web Components 吧!

前言先前研究 Progressive Web App 的時候就有注意到 Web Components 這個東西,也看過公司前輩使用過,甚至在前陣子 GDG DevFest Taipei 2016 的官方網站內,不僅使用 PWA,也採用了 Web Components 的技術(當然應該是用 Google 的 Polymer)來搭建。但還是很少看人使用與談論,我自己也是從來沒有仔細研究過(汗.. 我稍微搜尋一下,大部分的介紹文章都是2013

Read More...

一個資淺工程師年末的自我省視

嗨大家,今天是 2016 年的最後一天了,先預祝大家新年快樂,能夠在明年有一個好的開始。同時也感謝大家對 TechBridge 的支持。 我自己喜歡看的技術文章有兩類,一種是分享一些實際的軟硬體技術,例如說教你怎麼用 Node.js 寫一個聊天機器人,或是怎麼用最新的 CSS 語法建造出酷炫的網頁效果等等。另外一種則是比較「軟」一點的心得分享文,例如說最近這陣子滿常看到被分享的這兩篇:接近 2016 年底的我是否有資格稱為資深工程師、技

Read More...

Object Recognition Kitchen 透明物體辨識(演算法概念)

前言這次的文章想要討論一個有趣的題目 – 透明物體辨識,這次的介紹先把題目限定在找出透明物體的位置,並把透明物體的輪廓找出來。 演算法功能簡介我們的演算法目的是要找出影像中的透明物體,並把輪廓圈出來,就像下面這張圖一樣。 其實如果要更精確,應該把想要辨識哪些透明物體、在那些場景、辨識成功率希望有多高、如何定義辨識成功等都說清楚,不過這邊想先帶給大家一個初步的概念,就不討論得太過瑣碎。 演算法概念為了達成這個功能,我們勢必要先收到彩色影

Read More...

Python 101 快速入門教學

什麼是 Python?Python 是一種物件導向、直譯式的跨平台電腦程式語言,它包含了一組功能完備的標準庫和豐富套件生態系,可以輕鬆完成很多常見的任務(例如:讀寫檔案、自然語言處理、網路爬蟲、網站開發、機器學習等),因為它可以很輕易整合其他底層語言,所以又稱為膠水語言。它的語法簡單,與其它大多數程式設計語言使用大括弧不一樣,它使用縮進來定義語句塊。由於具備簡潔易學等特性,許多開發者推薦 Python 為初學者第一個學習的程式語言。

Read More...

用 JavaScript 學習資料結構和演算法:佇列(Queue)篇

什麼是佇列(Queue)?佇列(Queue)是一種先進先出(First In First Out, FIFO)的有序串列(Ordered List),與堆疊(Stack)後進先出(Last In First Out, LIFO)不同的是佇列(Queue)的新增和刪除元素是發生在不同端,新增元素在尾部、移除元素在頂部,最新加入的元素會從尾部排入。在一般生活中比較常見的例子是電影院排隊買票、小七便利商店排隊付款(當然不能有人想插隊啦),在

Read More...

直播協定 hls 筆記

前言最近剛好在做直播相關的東西,雖然說是做前端,但還是必須懂一些直播的原理至少要知道有哪些格式,以及各種格式的優缺點是什麼,做起來也會比較踏實 這篇就簡單記錄一些心得跟資料,如果想比較深入了解 hls 的,可以參考下面這兩篇文章: 直播协议的选择:RTMP vs. HLS 在线视频之HLS协议—学习笔记:M3U8格式讲解及实际应用分析 hls 是什麼?我覺得以直播來說,hls 是一個相當好懂的協定,其實就是透過一個 .m3u8 的播

Read More...

接收來自 ROS Topic 的影像並偵測畫面中的動作

前言這次來帶大家玩個基礎的應用 - 動作偵測,用自己筆電的相機再加上 OpenCV 的 API,就可以做到動作偵測並把在動的地方框起來。可以透過這篇學習怎麼使用 ROS Topic 來接收影像並做後續的處理。 開 package 寫程式首先來開一個 motion_detector package: 123catkin_create_pkg motion_detector rospy sensor_msgs cv_bridge usb_c

Read More...

一小時內製作自己的 Pebble 錶面

筆者「最近」買了一隻 Pebble 2,大概是半年多前的事情…當初看上他便宜信譽好,又可以用 javascript 撰寫自己的 watch face,所以就刷下去了,算是第一次在 kickstarter 上面贊助產品,等待的時間久到我都快忘了….才怪,我大概每個月都會想起來一次 XD 總之,經過幾個月漫長等待,以及網站上跟我一樣想趕快拿到產品的 baker 們不斷地詢問下,終於還是送到我手上了! Tada ~! …不對這篇不是開箱文 我

Read More...