2009年8月10日
#
摘要: TinyXML是一個(gè)開源的解析XML的解析庫,能夠用于C++,能夠在Windows或Linux中編譯。這個(gè)解析庫的模型通過解析XML文件,然后在內(nèi)存中生成DOM模型,從而讓我們很方便的遍歷這棵XML樹。
DOM模型即文檔對象模型,是將整個(gè)文檔分成多個(gè)元素(如書、章、節(jié)、段等),并利用樹型結(jié)構(gòu)表示這些元素之間的順序關(guān)系以及嵌套包含關(guān)系。
閱讀全文
2009年7月29日
#
摘要: 希爾排序?qū)嶋H上是一種分組插入排序,它的執(zhí)行時(shí)間依賴于增量序列,而且是不穩(wěn)定的。其基本思想是:先取一個(gè)小于n的整數(shù)d1作為第一個(gè)增量,把文件的全部記錄分成d1個(gè)組。所有距離為dl的倍數(shù)的記錄放在同一個(gè)組中。先在各組內(nèi)進(jìn)行直接插入排序;然后,取第二個(gè)增量d2
閱讀全文
2009年7月27日
#
摘要: 歸并算法的核心操作就是將一維數(shù)組中前后相鄰的兩個(gè)兩個(gè)有序序列合并成一個(gè)有序序列。合并算法也可以采用遞歸算法來實(shí)現(xiàn),形式上較為簡單,但實(shí)用性很差。合并算法的合并次數(shù)是一個(gè)非常重要的量,根據(jù)計(jì)算當(dāng)數(shù)組中有3到4個(gè)元素時(shí),合并次數(shù)是2次,當(dāng)有5到8個(gè)元素時(shí),合并次數(shù)是3次,當(dāng)有9到16個(gè)元素時(shí),合并次數(shù)是4次,按照這一規(guī)律,當(dāng)有N個(gè)子序列時(shí)可以推斷出合并的次數(shù)是X(2 >=N,符合此條件的最小那個(gè)X)。
閱讀全文
2009年7月25日
#
摘要: 異步IO中也有高效低效之分,但主要還是要看具體的應(yīng)用到底需要什么樣機(jī)制。比如大家熟知的select就是個(gè)非常通用且跨平臺(tái)的方法,由于select中需要把大量的時(shí)間花在維護(hù)IO句柄上,導(dǎo)致其效率大打折扣,一般來說,對于小并發(fā)的異步IO操作,比如普通的客戶端或者是小并發(fā)量的服務(wù)器,它的效率可能也足夠了。關(guān)于select的效率問題其實(shí)從各平臺(tái)上對于FD_SETSIZE的定義就能看出一些來,在windows平臺(tái)上,F(xiàn)D_SETSIZE是64,在Linux平臺(tái)上是1024,也就是說,對于平臺(tái)提供商來說也不指望他們提供的select能給你多大的并發(fā)吞吐能力。
閱讀全文
摘要: 所謂的同步和異步,在這里指的是應(yīng)用程序和內(nèi)核之間的交互方式。如果應(yīng)用程序不需要等待內(nèi)核的回應(yīng),那么它就是異步的。如果應(yīng)用程序提交完IO請求后,需要等待“回執(zhí)”,那么它就是同步的。而阻塞和非阻塞,指的是應(yīng)用程序是否等待IO操作的完成。如果應(yīng)用程序必須等到IO操作實(shí)際完成以后再執(zhí)行下面的操作,那么它是阻塞的。反之,如果不等待IO操作的完成就開始執(zhí)行其它操作,那么它是非阻塞的。
閱讀全文
2009年7月20日
#
摘要: 在當(dāng)前無序區(qū)R[1..H]中任取一個(gè)數(shù)據(jù)元素作為比較的"基準(zhǔn)"(不妨記為X),用此基準(zhǔn)將當(dāng)前無序區(qū)劃分為左右兩個(gè)較小的無序區(qū):R[1..I-1]和R[I+1..H],且左邊的無序子區(qū)中數(shù)據(jù)元素均小于等于基準(zhǔn)元素,右邊的無序子區(qū)中數(shù)據(jù)元素均大于等于基準(zhǔn)元素,而基準(zhǔn)X則位于最終排序的位置上,即R[1..I-1]≤X.Key≤R[I+1..H](1≤I≤H),當(dāng)R[1..I-1]和R[I+1..H]均非空時(shí),分別對它們進(jìn)行上述的劃分過程,直至所有無序子區(qū)中的數(shù)據(jù)元素均已排序?yàn)橹埂?nbsp;
閱讀全文
摘要: 兩兩比較待排序數(shù)據(jù)元素的大小,發(fā)現(xiàn)兩個(gè)數(shù)據(jù)元素的次序相反時(shí)即進(jìn)行交換,直到?jīng)]有反序的數(shù)據(jù)元素為止。
閱讀全文
摘要: 每次將一個(gè)待排序的數(shù)據(jù)元素,插入到前面已經(jīng)排好序的數(shù)列中的適當(dāng)位置,使數(shù)列依然有序;直到待排序數(shù)據(jù)元素全部插入完為止。
閱讀全文
摘要: 每一趟從待排序的數(shù)據(jù)元素中選出最小(或最大)的一個(gè)元素,順序放在已排好序的數(shù)列的最后,直到全部待排序的數(shù)據(jù)元素排完。
閱讀全文
摘要: va_list 可變參數(shù)
閱讀全文