原创 leetcode 463. Island Perimeter

463. Island Perimeter You are given a map in form of a two-dimensional integer grid where 1 represents land and 0

原创 IPython下的網絡協議學習-------以echo回顯程序爲例

在進入正文之前強烈推薦IPython 來學習網絡編程,和C語言繁瑣的語法和編譯相比,IPython交互的輸入輸出效率奇高,打開兩個IPython頁面就可以方便的編寫服務端和客戶端程序了。推薦anaconda環境,集成了很多必備的庫

原创 leetcode--蓄水池抽樣

本文題目來源於leetcode,原題給出一個未知大小鏈表,要求返回一個隨機節點的值,且返回每個節點的概率一定。(PS 一直弄不明白OJ怎麼判斷概率) 蓄水池抽樣(Reservoir Sampling )能夠在o(n)時間內對n個數

原创 C語言 atof()的實現

網上搜了幾個關於atof()實現的博客,實現的都不是很全面,有的未考慮科學計數法,有的未考慮非法輸入,所以打算自己實現atof()。 函數實現要求: 將字符串表示的浮點數轉化爲double類型; 可以採用科學計數法,如1.34e

原创 leetcode 406- Queue Reconstruction by Height 貪心算法的應用

406- Queue Reconstruction by Height Suppose you have a random list of people standing in a queue. Each person is d

原创 圖片預處理之PCA(UFLDL Tutorial)

原文鏈接UFLDL Tutorial PCA PCA主成分分析(Principal Components Analysis)是重要的降低維度的方法,可以大大提高算法運行的速度。PCA更是應用白化(whiten)的基礎,而whit

原创 leetcode 384- Shuffle an Array --STL shuffle算法的實現

384. Shuffle an Array 題目: Shuffle a set of numbers without duplicates. Example: // Init an array with set 1, 2, an

原创 歸併排序的經典實現與分析

歸併排序是一種最壞情況複雜度爲O(nlgn)的排序算法,常用於要求進行穩定排序的應用中,STL中的stable_sort常見的實現便是採用了歸併排序。但是歸併排序在歸併的過程中,需要額外O(n)的存儲空間,且內循環平均效率劣於快速

原创 leetcode 51. N-Queens 回溯算法的應用

N-Queens Add to List QuestionEditorial Solution My Submissions Total Accepted: 67411 Total Submissions: 23584

原创 使用python腳本執行系統命令

最近在弄驗證碼識別小工具,下了一大堆數據集,要給每個目錄分類改名,作爲一個以編程爲信仰的人,怎麼能手動一個一個重命名呢?!爲此我想起了學習Unix時的shell編程。。搗鼓了半天,一會是$忘記添加,一會是數組的奇葩表達。。總而言之

原创 基於對話框的繪圖

一 對話框的繪圖機制 MFC中對話框的繪圖是由對話框接受系統WM_PAINT消息後,根據消息處理程序來執行相應的操作。可以在類嚮導中的消息中添加處理程序,亦或是在對話框資源列表中添加處理程序,一般繪圖消息處理程序函數名位

原创 Ping程序的使用

ping程序的目的是爲了測試一臺主機到另一臺主機是否可達。ping程序通過主機向目的主機發送一份ICMP(網絡控制報文協議)回顯請求,並等待返回的ICMP 回顯應答。也就是說ping程序需要通過運輸層(ICMP屬於網絡層協議)。

原创 神經網絡簡介--激活函數、網絡架構、生物模型解釋

目錄 目錄 概述 神經元模型 與生物學的聯繫 單神經元作爲線性分類器 常用的激活函數 神經網絡架構 分層組織 前饋計算示例 神經網絡的表示能力 設置圖層數量及其大小 概要 引用 概述 無需類比大腦的機制我們也能介紹神經網

原创 神經網絡介紹--數據預處理、權重初始化及正則化

目錄 目錄 數據和模型的處理 數據預處理 減去平均值 規範化(normalization) PCA和白化(whiten) 常見的陷阱 權重初始化 陷阱:全零初始化 使用小隨機數初始化 用1 / sqrt(n)標準化方差 稀疏初始化

原创 梯度提升算法 介紹

翻譯維基百科介紹 梯度提升算法 梯度提升算法是一種解決迴歸和分類問題的機器學習技術,它通過對弱預測模型(比如決策樹)的集成產生預測模型。它像其他提升方法一樣以分步的方式構建模型,並且通過允許使用任意可微分的損失函數來推廣它們。 非正式介紹