原创 設計模式之觀察者模式

觀察者模式(Observer)又叫做發佈-訂閱(Publish/Subscribe)模式、模型-視圖(Model/View)模式、源-監聽器(Source/Listener)模式或從屬者(Dependen

原创 設計模式之命令模式

命令模式: 將“請求”封裝成對象,以便使用不同的請求、隊列或者日誌來參數化其他對象。命令模式也支持可撤銷的操作。命令模式又稱爲動作(Action)模式或事務(Transaction)模式。 以下情況可以考慮使用命令模式: 系統需要將請求

原创 【深度學習】怎樣在6個月內掌握深度學習

It is quite possible to learn,follow and contribute to state-of-art work in deep learning inabout 6 months’ time. This

原创 大聖歸來!

我又回來了!迴歸根本,知行合一!

原创 查找最長迴文

首先用一個非常巧妙的方式,將所有可能的奇數/偶數長度的迴文子串都轉換成了奇數長度:在每個字符的兩邊都插入一個特殊的符號。比如 abba 變成 #a#b#b#a#, aba變成 #a#b#a#。 爲了進一步減少編碼的複雜度,可以在字符串

原创 [Linux內核設計與實現]Linux系統調用

系統調用在用戶空間與硬件設備之間添加一箇中間層。該中間層主要作用有三個。第一,它爲用戶空間提供了一種硬件的抽象接口。第二,系統調用保證了系統的穩定和安全。第三,每個進程都運行在虛擬的系統中,而在用戶空間和系統的其餘部分提供這樣一層公共接口

原创 Java同步之synchronized

Java中可以使用關鍵字synchronized進行線程同步控制,實現關鍵資源順序訪問,避免由於多線程併發執行導致的數據不一致性等問題。synchronized的原理是對象監視器(鎖),只有獲取到監視器的

原创 sed, a stream editor

http://www.gnu.org/software/sed/manual/sed.html sed, a stream editor Next: Introduction,Up: (dir) s

原创 Linux設備驅動開發之hello, world

Linux內核編譯 一文中介紹了Linux 2.6內核的編譯與安裝工作,今天介紹一下Linux設備驅動開發的hello, world程序。 進行Linux設備驅動開發必須準備好Linux內核編譯環境,設備驅動程序依賴於這個環境。 下面是一

原创 Linux進程間通信與生產者消費者問題

生產者消費者問題(英語:Producer-consumerproblem),也稱有限緩衝問題(英語:Bounded-bufferproblem),是一個多線程同步問題的經典案例。該問題描述了兩個共享固定大