原创 hash表簡介(僅涉及數據結構,初始化插入刪除遍歷等操作算法暫時沒寫)

hash表的特點就是對於一堆有key值的數據塊(同一種數據結構),通過將這些數據塊掛在hash表上之後,可以通過key值在線性時間內查詢到相應的數據塊。 數據結構: typedef struct hash_node{     hash_n

原创 c/c++動態創建二維數組

c風格創建二維數組: int l1 = word1.size(); int l2 = word2.size(); int **dp = new int*[l1]; for(int i = 0;i<l1;i++)

原创 最長遞增子序列&&最長連續遞增子序列

最長遞增子序列算法尚有缺陷,不能輸出所有最長遞增子序列 最長遞增子序列: #include<iostream> using namespace std; void PrintMaxSubSeq(int flag, int i, int

原创 POJ 1228

題意是原先有一堆點,它們可以構成一個凸包,現在因爲時間原因一些點消失了,問現在的點是否能構成一個唯一的凸包。也就是這些點生成的凸包是否還能添加點生成新的凸包。思路是判斷每一條邊上是否都是有3個或者以上的點,以使該邊穩定,第一次交WA了,搞

原创 hdu 1113

Problem Description In millions of newspapers across the United States there is a word game called Jumble. The object o

原创 HDU 2152

Fruit Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4460    

原创 poj 2421

最小生成樹模板題,就是POJ的英文實在有點難翻譯,好好的一個X,Y座標分別對應兩個村莊,數值對應村莊距離愣是說得不明不白。 代碼: #include<iostream> using namespace std; #define maxn

原创 poj 1789

POJ的題目,讀起來真費事,,,意思是給你N串有7個字符的字符串,任意兩個字符串的距離就是兩個字符串相同位置上不同字符數量之和(如aaaa和baba,第一位和第三位不同,所以距離爲2),現在讓我們求一個方案,要求所有串都必須由其它串演變而

原创 poj 1679

 這道題算是對最小生成樹的一個衍生,給你一個樹,判斷它的最小生成樹是否唯一,這裏需要用到次小生成樹算法,如果次小生成樹大小和最小生成樹一樣,則不唯一。 算法1(每次從最小生成樹上去掉一個邊,再求該圖的最小生成樹的權值和,再對所有新生成的最

原创 MFC六大核心機制之二:運行時類型識別(RTTI)(轉載)

http://www.jizhuomi.com/software/269.html 很棒的一篇文章,不過MFC真有意思,對於多態自己造了個消息映射輪子,RTTI自己造了個CRuntimeClass宏輪子

原创 ubuntu 18禁用輸入法ctrl alt h 快捷鍵

配置當前輸入法---附加組件----鍵盤佈局----切換單詞提示選爲空即可

原创 二叉樹中和爲某一值的路徑(遞歸解決)

題目描述 輸入一顆二叉樹的根節點和一個整數,打印出二叉樹中結點值的和爲輸入整數的所有路徑。路徑定義爲從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。(注意: 在返回值的list中,數組長度大的數組靠前) /* struct Tr

原创 淺析libco協程庫上下文切換過程

之前爲了瞭解一下協程而去學習了用c++編寫的libco協程庫,其中的協程上下文切換感覺比較有意思,正好這段時間學了一點X86的彙編,所以自己試着解讀一下其中用匯編寫的上下文切換過程。 先給出上下文切換的函數定義以及函數的參數結構體: c

原创 快速排序(兩個index同時向右移動版)

之前數據結構書中的快排確定樞紐點是用兩個指針一個指頭一個指尾,並將兩個指針都往中間方向掃描,最終確定樞紐點的方法。近來看到另一種確定partion的方法(用small和i兩個index一起往end方向掃描,並確定樞紐點,感覺也十分巧妙,

原创 堆排序(利用大頂堆構建增序)

#include <iostream> using namespace std; void heapsort(int *arr,int len); void heapadjust(int *arr,int i,int len); int