Time of Update: 2018-12-05
這幾天在研究suggest tree, suggest tree是以Ternary Search Tree為基礎,所以先轉一個3分搜尋樹部落格。轉自: http://chenzongzhi.info/?p=173英文原版:http://drdobbs.com/database/184410528?pgno=1經常碰到要存一堆的string, 這個時候可以用hash tables, 雖然hash tables 尋找很快,但是hash tables不能表現出字串之間的聯絡.可以用binary
Time of Update: 2018-12-05
1)C(Client)-> M(Media Server) OPTIONS rtsp://192.168.1.109/1.mpg RTSP/1.0 CSeq: 1 user-Agent: VLC media player(LIVE555 Streaming Media v2007.02.20) 1)M -> C RTSP/1.0 200 OK CSeq: 1 Date: wed, Feb 20 2008 07:13:24 GMT Public: OPTIONS, DESCRIBE,
Time of Update: 2018-12-05
讓Ubuntu也可以建立ODBC串連是依靠一個開源項目叫做iODBC實現的,這個iODBC就是為了讓Unix體系的系統也能使用ODBC串連,iODBC就是ODBC的開源實現。經過測試在Ubuntu 8.04和Ubuntu 8.10下均可正常工作。 首先要有MySQL,如果還未安裝,一句話安裝命令: $sudo apt-get install mysql-client mysql-server 安裝iODBC的驅動管理器(GTK編寫的前端介面): $sudo apt-get
Time of Update: 2018-12-05
久聞剩餘定理大名,也略懂一二。。不過今天認真學習了下。。留下此貼,以記之。參考:http://eblog.cersp.com/userlog/7978/archives/2008/723693.shtmlhttp://book.51cto.com/art/200812/102579.htm例1:一個數被3除餘1,被4除餘2,被5除餘4,這個數最小是幾?題中3、4、5三個數兩兩互質。則〔4,5〕=20;〔3,5〕=15;〔3,4〕=12;〔3,4,5〕=60。為了使20被3除餘1,用20×2=40
Time of Update: 2018-12-05
最近在弄wordpress, 想弄一個自己的部落格,wordPress是用php寫的一套部落格架構,所以順道學了一下phptutorial。對於web開發技術中眼花繚亂的開發語言,覺得很迷惘,所以又花了寫時間對一些語言進行了總結和分類,希望對以後有些協助。一些概念介紹:1. Web Server: 也可以是web Container, 用於部署webproject, 用於處理webclient 端來的請求,同時產生response返回,等等, 現有的具體的web Server
Time of Update: 2018-12-05
歐幾裡得演算法的概述歐幾裡德演算法又稱輾轉相除法,用於計算兩個整數a,b的最大公約數。其計算原理依賴於下面的定理: 定理:gcd(a,b) = gcd(b,a mod b) 證明:a可以表示成a = kb + r,則r = a mod b 假設d是a,b的一個公約數,則有 d|a, d|b,而r = a - kb,因此d|r 因此d是(b,a mod b)的公約數 假設d 是(b,a mod b)的公約數,則 d | b , d |r ,但是a = kb
Time of Update: 2018-12-05
Cuckoo Hash 是一種hash衝突解決方案, 其目的是即時使用簡易的hash function 也能夠實現hash key的均勻分布。基本思想是使用2個hash函數來處理碰撞,從而每個key都對應到2個位置。插入操作如下:1. 對key值hash,產生兩個hash key值,hashk1和 hashk2, 如果對應的兩個位置上有一個為空白,那麼直接把key插入即可。2. 否則,任選一個位置,把key值插入,把已經在那個位置的key值踢出來。3.
Time of Update: 2018-12-05
在上一篇部落格中:http://blog.csdn.net/suwei19870312/article/details/7579667。講了Client 端代碼和Server端代碼的互動。Client端代碼通過GET method,向Server端代碼user.php傳遞了一個參數q,在user.php代碼中使用參數q來構建訪問資料庫的SQL語句:$sql="SELECT * FROM user WHERE id ='".$q."'"; $result = mysql_query($sql);
Time of Update: 2018-12-05
對於vector使用來說,為了防止reallocate記憶體,而導致的資料拷貝產生的額外耗時。可以通過以下兩種組合來防止reallocate.1. vector::resize() 使用array index2. vector::reserve()使用 push_back(). 於是我在windows 2003的平台下對這兩種情況做了測試, 同時加上對不做記憶體預留,直接使用push_back()的3中情況進行了對比: #define MAX 100000000void
Time of Update: 2018-12-05
#include <iostream>#include <string>#include <vector>#include <algorithm>using namespace std;class TernarySearchTree{private:struct tnode{char s;tnode *lkid, *mkid, * rkid;bool mbEnd;tnode(char is){s = is;lkid = NULL;mkid =
Time of Update: 2018-12-05
datasir的空間打不開的問題已經解決,是我程式的問題。這兩天試用了幾個國外的免費虛擬機器主機:000webhost:申請之後,需要郵件確認才能使用,但是我一直沒有收到確認信;現在已經知道問題所在了,需要用匿名代理(可以選擇web線上代理)才可以,因為不對 國內 開放申請datanethost : 感覺規模很小,在教育網訪問速度可以,提供50Mb php web空間和一個mysql資料庫。支援網域名稱綁定,但是需要和站長聯絡。www.freewebhostingarea.com: 500MB
Time of Update: 2018-12-05
情境:兩個Project A和B, 在B中的某個類BB中增加了幾個成員變數,BB類的標頭檔被Project A中的某段代碼引用。A中的引用代碼是。vector<BB> lvBB;lvBB.resize(2).在對BB類做了修改之後,只是單純的對project B做了編譯,而沒有對A做編譯。 結果:當運行到上面那段代碼的時候,產生了accesss violatioin的問題。 原因:在對BB類做了修改之後,只是單純的對project
Time of Update: 2018-12-05
Over the past couple of years, auto-complete has popped up all over the web. Facebook, YouTube, Google, Bing, MSDN, LinkedIn and lots of other websites all try to complete your phrase as soon as you start typing.Auto-complete definitely makes for a
Time of Update: 2018-12-05
內聯彙編是指在原始碼中直接加入彙編代碼,這樣在對原始碼進行編譯之後的彙編代碼中就包含有植入的彙編代碼,以達到代碼最佳化的目的。有時候程式員自己認為自己編寫的彙編代碼的效能肯定比編譯器產生的彙編代碼效能更好,有些自負,但是如果開啟編譯器的最佳化選項,其產生的最佳化後的彙編代碼,在效能上一般都能超過人工編寫的內斂彙編代碼,這是很悲劇的。 還有一點需要注意的是, 內斂彙編不是跨平台的,於是程式員需要根據不同的平台,寫不同的內聯彙編代碼以達到跨平台的目的。 下面收集了一些關於內斂彙編的資料。1.
Time of Update: 2018-12-05
理論: 令h(1)=1,h(0)=1,catalan數滿足遞迴式: h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (其中n>=2) 另類遞迴式: h(n)=((4*n-2)/(n+1))*h(n-1); 該遞推關係的解為: h(n)=C(2n,n)/(n+1) (n=1,2,3,...) 應用如下:1. 括弧化問題 矩陣鏈乘:
Time of Update: 2018-12-05
題目大意:八皇后問題是一個以國際象棋為背景的問題:如何能夠在 8×8 的國際象棋棋盤上放置八個皇后,使得任何一個皇后都無法直接吃掉其他的皇后?為了達到此目的,任兩個皇后都不能處於同一條橫行、縱行或斜線上。八皇后問題可以推廣為更一般的n皇后擺放問題:這時棋盤的大小變為n×n,而皇后個數也變成n。若且唯若 n = 1 或 n ≥ 4
Time of Update: 2018-12-05
一直以為歸併排序就只能排序用了,原來還有這麼一個用處,以O(NlogN)的時間複雜度來求一個數組的總的逆序數。長見識了。 歸併排序演算法就不多說了。時間複雜度及最壞情況下的時間複雜度為O(NlogN), 空間複雜度為O(N).存在問題:1. 附加記憶體2. 資料拷貝到臨時數組,然後拷貝回來的操作放慢了排序的速度。因此,對於記憶體排序,一般用快速排序。上歸併排序的代碼:隱藏行號 複製代碼 ?歸併排序#include#includetypedef int ElementType; void
Time of Update: 2018-12-05
目前磁碟都是機械方式運作的,主要體現在磁碟讀寫前尋找磁軌的過程。磁碟內建的讀寫緩衝大小,對於磁碟讀寫速度至關重要。讀寫速度快的磁碟,通常都帶有較大的讀寫緩衝。磁碟的尋道過程是機械方式,決定了其隨機讀寫速度將明顯低於順序讀寫。在我們做系統設計和實現時,需要考慮到磁碟的這一特性。 FastDFS是一個開源的高效Distributed File
Time of Update: 2018-12-05
昨天我們做了清華的預選賽,沈大、梁老大、肖叉各搞定一道題,險些跌出60名。我做了B和F,其中F是關於逆序數的題目,複雜度是 nlog2n+mn 最差的複雜度可能降為O(n^2)。但我提交的結果不是TLE,而是MLE和RE。真不知道是清華判題系統有問題還是我的程式有問題。總之,我心有不服啊,所以決定今天花點時間歸納一下“逆序對”的題目,給大家寫份報告,提供點資料。 首先,逆序對(inversion
Time of Update: 2018-12-05
網路位元組序與主機位元組序不同的CPU有不同的位元組序類型 這些位元組序是指整數在記憶體中儲存的順序 這個叫做主機序 最常見的有兩種1. Little endian:將低序位元組儲存在起始地址2. Big endian:將高序位元組儲存在起始地址對於大端序和小端序更好的理解,可以看維基百科http://zh.wikipedia.org/wiki/位元組序 LE