• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            羅朝輝(飄飄白云)

            關注嵌入式操作系統,移動平臺,圖形開發。-->加微博 ^_^

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              85 隨筆 :: 0 文章 :: 169 評論 :: 0 Trackbacks

            Algorithms

            算法,數據結構相關的東東
                 摘要: 前面寫了好些排序,紅黑樹,B 樹算法的文章,還剩下查找這一大塊沒有寫,查找相關的算法代碼已經實現,但是卻沒有寫查找算法日志的閑情了,只好先在這里放出代碼來,以后有空有閑情再補上吧。

            算法代碼 Google 倉庫:點擊這里
              閱讀全文
            posted @ 2011-04-10 12:11 羅朝輝 閱讀(890) | 評論 (0)  編輯

                 摘要: 紅黑樹本質是二叉查找樹的一種,它的性能高于普通的二叉查找樹,即使是在最壞的情況下也能保證時間復雜度為O(lgn)。紅黑樹在每個結點上增加一個存儲位表示結點的顏色(或紅或黑,故稱紅黑樹)。通過對任何一條從根到葉子的路徑上各個結點著色方式的限制,紅黑樹可以保證沒有一條路徑會比其他路徑長出兩倍,因而是接近平衡的。

            紅黑樹的每個結點至少包含五個域:color,key,left,right 和 parent(一般我們都會在結點中存儲額外的數據 data,但前面的五個域是必不可少的),如果某個結點沒有子結點或者結節點,則將相應的指針設置為空值(NIL,注意不是 NULL,NIL是一個特定的空結點對象,類似于Obj-C 中 Nil對象)。我們將這些 NIL 當作葉子結點(在實際處理過程中,往往將最底層的孩子結點和根結點的父親都指向同一個 NIL 結點,以便于處理紅黑樹代碼中的邊界條件),而將其它結點當作內結點。
              閱讀全文
            posted @ 2011-04-03 11:21 羅朝輝 閱讀(1889) | 評論 (0)  編輯

                 摘要: B 樹是一種被設計成專門存儲在磁盤上的平衡查找樹。因為磁盤的操作速度要大大慢于隨機存取存儲器,所以在分析B 樹的性能時,不僅要看動態集合操作花了多少計算時間,還要看執行了多少次磁盤存儲操作。 B 樹與紅黑樹(下一篇介紹)類似,但在降低磁盤I/O 操作次數方面要更好一些。許多數據庫系統就使用 B 樹或 B 樹的變形來存儲信息,想象一下一棵每個節點包含 1001 個 key 的高度為 2 的 B 樹能容納多少數據啊,而在內存中我們只存儲了一個節點,在需要的時候再從磁盤中讀取所需的節點。

              閱讀全文
            posted @ 2011-03-21 23:10 羅朝輝 閱讀(4172) | 評論 (5)  編輯

                 摘要: 前面講了插入排序,交換排序,選擇排序,歸并排序,下面接著來講桶排序,基數排序。

            桶排序和基數排序均屬于分配排序。分配排序的基本思想:排序過程無須比較關鍵字,而是通過用額外的空間來"分配"和"收集"來實現排序,它們的時間復雜度可達到線性階:O(n)。簡言之就是:用空間換時間,所以性能與基于比較的排序才有數量級的提高!  閱讀全文
            posted @ 2011-03-18 23:47 羅朝輝 閱讀(889) | 評論 (0)  編輯

                 摘要: 前面講了插入排序,交換排序,選擇排序,下面接著來講歸并排序。

            歸并排序(Merge Sort)是利用"歸并"技術來進行排序。歸并是指將若干個已排序的子文件合并成一個有序的文件。

            其基本思想為:設兩個有序的子序列(相當于輸入序列)放在同一序列中相鄰的位置上:array[low..m],array[m + 1..high],先將它們合并到一個局部的暫存序列 temp (相當于輸出序列)中,待合并完成后將 temp 復制回 array[low..high]中,從而完成排序。
              閱讀全文
            posted @ 2011-03-13 15:19 羅朝輝 閱讀(8221) | 評論 (0)  編輯

                 摘要: 前面講了插入,交換排序,下面接著來講選擇排序。  閱讀全文
            posted @ 2011-03-09 21:37 羅朝輝 閱讀(1465) | 評論 (0)  編輯

                 摘要: 前面我們講了插入排序,下面接著來講交換排序。

            交換排序的基本思想是:兩兩比較待排序記錄的關鍵字,發現兩個記錄的次序相反時即進行交換,直到沒有反序的記錄為止。應用交換排序基本思想的主要排序方法有:冒泡排序和快速排序。
              閱讀全文
            posted @ 2011-03-04 23:47 羅朝輝 閱讀(1590) | 評論 (0)  編輯

                 摘要: 排序是數據處理中經常使用的一種重要運算,在計算機及其應用系統中,花費在排序上的時間在系統運行時間中占有很大比重,其重要性無需多言。下文將介紹常用的如下排序方法,對它們進行簡單的分析和比較,并提供 C/C++ 語言實現。

            所謂排序,就是要將一堆記錄,使之按關鍵字遞增(或遞減)次序排列起來。根據排序所采用的策略,可以分為如上五種:

            1、插入排序(直接插入排序、希爾排序);
            2、交換排序(冒泡排序、快速排序);
            3、選擇排序(直接選擇排序、堆排序);
            4、歸并排序;
            5、桶排序(桶排序,基數排序);

            其中插入排序、交換排序、選擇排序、選擇排序、歸并排序都是基于關鍵字比較的排序,比較排序的平均時間復雜度好不過 O(nlogn)。
            而桶排序是基于映射的排序,其平均時間復雜度可達到 O(n),但桶排序需要額外的空間來存儲經過映射的記錄。

            通常在待排序記錄較多的時候,基于映射的排序 O(n) 比基于比較的排序 O(nlogn) 的效率要高得多,這很好理解:用空間換時間。(查找算法其實也是如  閱讀全文
            posted @ 2011-03-03 22:07 羅朝輝 閱讀(1960) | 評論 (0)  編輯

                 摘要: 在上一篇文章《Android 上實現水波特效》中對水波波幅的計算是針對每一個像素的,效率比較低,尤其是在手機上運行,相當緩慢。我們可以利用線性插值進行優化,這樣可以將計算減少一半(MeshSize 為 2)或減少四分之三(MeshSize 為 4),效率得以大大提升,即使是在手機上也能較為流暢地運行。
              閱讀全文
            posted @ 2010-09-28 11:49 羅朝輝 閱讀(1402) | 評論 (0)  編輯

                 摘要: 本文中的水波特效算法部分整理自 GameRes 上的資料,原作者 Imagic。我只是在學習 Android 的過程中,想到這個特效,然后就在Android 上實現出來,并在源算法的基礎上添加了雨滴滴落特效,以及劃過水面時的漣漪特效。 該程序在模擬器和真機上運行速度都較慢,需要進一步優化或使用 JNI 實現,如果你想到好的優化算法,請聯系我:kesalin@gmail.com。  閱讀全文
            posted @ 2010-09-01 13:19 羅朝輝 閱讀(3674) | 評論 (0)  編輯

            久久婷婷五月综合97色直播| 四虎影视久久久免费| 要久久爱在线免费观看| 日韩精品久久久久久久电影| 亚洲色欲久久久综合网| AV狠狠色丁香婷婷综合久久| 国产精品99久久精品爆乳| 久久精品国产欧美日韩99热| 久久精品国产亚洲av麻豆色欲| 国产午夜精品久久久久九九| 色综合久久中文字幕无码| 久久婷婷五月综合成人D啪 | 久久久久国产一级毛片高清版| 性欧美大战久久久久久久| 无码久久精品国产亚洲Av影片 | 国产精品毛片久久久久久久| 久久久久亚洲国产| 国内精品久久久久伊人av| 久久福利资源国产精品999| 久久无码人妻精品一区二区三区| 色综合久久无码中文字幕| 久久影视综合亚洲| 99久久精品免费观看国产| 国产成年无码久久久久毛片| 一级女性全黄久久生活片免费 | 久久精品国产精品亚洲下载| 成人午夜精品久久久久久久小说| 精品久久久久久中文字幕大豆网| 久久亚洲精品无码播放| 中文字幕一区二区三区久久网站| 人妻无码αv中文字幕久久| 亚洲女久久久噜噜噜熟女| 久久综合日本熟妇| 久久久精品人妻无码专区不卡 | 色婷婷噜噜久久国产精品12p| 国产成人综合久久久久久| 久久精品国产半推半就| 国产午夜精品久久久久九九| 国产精品久久影院| 91精品国产91久久久久久青草| 97精品国产91久久久久久|