原创 Mysql 行轉列,列轉行

CREATE TABLE `StudentScores` ( `UserName` varchar(20) DEFAULT NULL, `Subject` varchar(30) DEFAULT NULL, `Score` f

原创 java判斷中文字符

//代碼來自HanLP自然語言處理庫,git地址:https://github.com/hankcs/HanLP/blob/master/src/main/java/com/hankcs/hanlp/utility/TextUtility

原创 數據結構和算法-二叉樹

1.樹樹(tree)是一種抽象數據類型(ADT),用來模擬具有樹狀結構性質的數據集合。它是由n(n>0)個有限節點通過連接它們的邊組成一個具有層次關係的集合。把它叫做“樹”是因爲它看起來像一棵倒掛的樹,也就是說它是根朝上,而葉朝下的。①、

原创 數據結構和算法-前綴、中綴、後綴表達式

舉例:(3 + 4) × 5 - 6 就是中綴表達式- × + 3 4 5 6 前綴表達式3 4 + 5 × 6 - 後綴表達式中綴表達式(中綴記法)中綴表達式是一種通用的算術或邏輯公式表示方法,操作符以中綴形式處於操作數的中間。中綴表達

原创 數據結構和算法-棧

1、棧的基本概念棧(英語:stack)又稱爲堆棧或堆疊,棧作爲一種數據結構,是一種只能在一端進行插入和刪除操作的特殊線性表。它按照先進後出的原則存儲數據,先進入的數據被壓入棧底,最後的數據在棧頂,需要讀數據的時候從棧頂開始彈出數據(最後一

原创 數據結構和算法-哈希表

1、哈希表介紹      Hash表也稱散列表,也有直接譯作哈希表,Hash表是一種根據關鍵字值(key - value)而直接進行訪問的數據結構。它基於數組,通過把關鍵字映射到數組的某個下標來加快查找速度,但是又和數組、鏈表、樹等數據結

原创 數據結構和算法-堆

1、堆的定義①、它是完全二叉樹,除了樹的最後一層節點不需要是滿的,其它的每一層從左到右都是滿的。注意下面兩種情況,第二種最後一層從左到右中間有斷隔,那麼也是不完全二叉樹。    ②、它通常用數組來實現。    這種用數組實現的二叉樹,假設

原创 數據結構和算法-遞歸

1、遞歸的定義遞歸就是在運行的過程中調用自己。遞歸必須要有三個要素:  ①、邊界條件  ②、遞歸前進段  ③、遞歸返回段當邊界條件不滿足時,遞歸前進;當邊界條件滿足時,遞歸返回。2、求一個數的階乘:n!n! = n*(n-1)*(n-2)

原创 數據結構和算法-2-3-4樹

1、2-3-4樹介紹2-3-4樹每個節點最多有四個字節點和三個數據項,名字中 2,3,4 的數字含義是指一個節點可能含有的子節點的個數。對於非葉節點有三種可能的情況:  ①、有一個數據項的節點總是有兩個子節點;  ②、有二個數據項的節點總

原创 數據結構和算法-高級排序

1、希爾排序  希爾排序是基於直接插入排序的,它在直接插入排序中增加了一個新特性,大大的提高了插入排序的執行效率。所以在講解希爾排序之前,我們先回顧一下直接插入排序。  ①、直接插入排序  直接插入排序基本思想是每一步將一個待排序的記錄,

原创 數據結構和算法-隊列

1、隊列的基本概念  隊列(queue)是一種特殊的線性表,特殊之處在於它只允許在表的前端(front)進行刪除操作,而在表的後端(rear)進行插入操作,和棧一樣,隊列是一種操作受限制的線性表。進行插入操作的端稱爲隊尾,進行刪除操作的端