原创 STL---heap概述,make_heap,sort_heap,pop_heap,push_heap

heap並不屬於STL容器組件,它分爲 max heap 和min heap,在缺省情況下,max-heap是優先隊列(priority queue)的底層實現機制。 而這個實現機制中的max-heap實際上是以一個vect

原创 SVM 詳解2

SVM入門(四)線性分類器的求解——問題的描述Part1 上節說到我們有了一個線性分類函數,也有了判斷解優劣的標準——即有了優化的目標,這個目標就是最大化幾何間隔,但是看過一些關於SVM的論文的人一定記得什麼優化的目標是要最

原创 SVM 詳解6

SVM入門(八)鬆弛變量 現在我們已經把一個本來線性不可分的文本分類問題,通過映射到高維空間而變成了線性可分的。就像下圖這樣:   圓形和方形的點各有成千上萬個(畢竟,這就是我們訓練集中文檔的數量嘛,當然很大了)。現在想象我們有另

原创 SVM 詳解4

SVM入門(六)線性分類器的求解——問題的轉化,直觀角度 讓我再一次比較完整的重複一下我們要解決的問題:我們有屬於兩個類別的樣本點(並不限定這些點在二維空間中)若干,如圖, 圓形的樣本點定爲正樣本(連帶着,我們可以把正樣本所屬的類

原创 SVM 詳解7

SVM入門(九)鬆弛變量(續) 接下來要說的東西其實不是鬆弛變量本身,但由於是爲了使用鬆弛變量才引入的,因此放在這裏也算合適,那就是懲罰因子C。回頭看一眼引入了鬆弛變量以後的優化問題: 注意其中C的位置,也可以回想一下C所起的作用

原创 SVM 詳解

按:之前的文章重新彙編一下,修改了一些錯誤和不當的說法,一起復習,然後繼續SVM之旅. (一)SVM的八股簡介 支持向量機(Support Vector Machine)是Cortes和Vapnik於1995年首先提出的,它在解決小

原创 B樹、B-樹、B+樹、B*樹

B樹        即二叉搜索樹:        1.所有非葉子結點至多擁有兩個兒子(Left和Right);        2.所有結點存儲一個關鍵字;        3.非葉子結點的左指針指向小於其關鍵字的子樹,右指針指向大

原创 圖文並茂用地址分析雙向鏈表

網上很多對雙向鏈表解釋的文章都是用這個結構:   它們的連接情況是這樣的:   相當的不直觀,今天我要從詳細的地址出發來解釋雙向鏈表的原理。   現定義一個結構體如下: struct student {char name

原创 C++STL之string

在學習c++STL中的string,在這裏做個筆記,以供自己以後翻閱和初學者參考。 1:string對象的定義和初始化以及讀寫 string s1;      默認構造函數,s1爲空串 string s2(s1);   將s2初始

原创 c++中string類的詳解

通過在網站上的資料蒐集,得到了很多關於string類用法的文檔,通過對這些資料的整理和加入一些自己的代碼,就得出了一份比較完整的關於string類函數有哪些和怎樣用的文檔了! 下面先羅列出string類的函數有哪一些,然後再羅列出函數的原

原创 linux中fork()函數詳解(原創!!實例講解)

版權聲明:本文爲博主原創文章,未經博主允許不得轉載。  摘自http://blog.csdn.net/jason314/article/details/5640969  一、fork入門知識      一個進程,包括代碼、數據和

原创 哈夫曼樹以及編解碼

這一篇要總結的是樹中的最後一種,即哈夫曼樹,我想從以下幾點對其進行總結: 1,什麼是哈夫曼樹? 2,如何構建哈夫曼樹? 3,哈夫曼編碼? 4,算法實現? 回到頂部 一,什麼是哈夫曼樹 什麼是哈夫曼樹呢? 哈夫曼樹是一種帶

原创 SVM 詳解3

SVM入門(五)線性分類器的求解——問題的描述Part2 從最一般的定義上說,一個求最小值的問題就是一個優化問題(也叫尋優問題,更文縐縐的叫法是規劃——Programming),它同樣由兩部分組成,目標函數和約束條件,可以用下面的式

原创 C 各種排序(選擇/冒泡/快速/插入/希爾/歸併/堆)

1.穩定性比較 插入排序、冒泡排序、二叉樹排序、二路歸併排序及其他線形排序是穩定的 選擇排序、希爾排序、快速排序、堆排序是不穩定的 2.時間複雜性比較 插入排序、冒泡排序、選擇排序的時間複雜性爲O(n2) 其它非線形排序的時間

原创 SVM 詳解5

SVM入門(七)爲何需要核函數 生存?還是毀滅?——哈姆雷特 可分?還是不可分?——支持向量機 之前一直在討論的線性分類器,器如其名(汗,這是什麼說法啊),只能對線性可分的樣本做處理。如果提供的樣本線性不可分,結果很簡單,線性分類器