散列表 散列表用的是數(shù)組支持按照下標隨機訪問的特性,所以散列表其實就是數(shù)組的一種擴展,由數(shù)組演化而來??梢哉f,沒有數(shù)組,就沒有散列表。
跳表 因為二分查找底層依賴的是數(shù)組隨機訪問的特性,所以只能用數(shù)組來實現(xiàn)。如果數(shù)據(jù)存儲在鏈表中,就真的沒法用二分查找算法了嗎?只需要對鏈表稍加改造...
查找第一個大于等于給定值的元素 在有序數(shù)組中,查找第一個大于等于給定值的元素。比如,數(shù)組中存儲的這樣一個序列:3,4,6,7,10。如果查找第一...
查找第一個值等于給定值得元素 有序數(shù)據(jù)集合中存在重復(fù)的數(shù)據(jù),希望找到第一個值等于給定值的數(shù)據(jù)。比如下面這樣一個有序數(shù)組,其中,a[5]、a[6]...
二分查找 假設(shè)有1000條訂單數(shù)據(jù),已經(jīng)按照訂單金額從小到大排序,每個訂單金額都不同,并且最小單位是元?,F(xiàn)在想知道是否存在金額等于19元的訂單。...
基數(shù)排序 假設(shè)有10萬個手機號碼,希望將這10萬個手機號從小到大排序,有什么比較快速地排序方法呢?快排時間復(fù)雜度可以做到O(nlogn),還有更...
計數(shù)排序 計數(shù)排序其實是桶排序的一種特殊情況。當要排序的n個數(shù)據(jù),所處的范圍并不大的時候,比如最大值是K,就可以把數(shù)據(jù)劃分成K個桶。每個桶內(nèi)的數(shù)...
桶排序(Bucket Sort) 桶排序核心思想是將要排序的數(shù)據(jù)分到幾個有序的桶里,每個桶里的數(shù)據(jù)在單獨進行排序。桶內(nèi)排完序之后,再把每個桶里的...
快速排序 快速排序的思想是這樣的:如果要排序數(shù)組中下標從p到r之間的一組數(shù)據(jù),選擇p到r之間的任意一個數(shù)據(jù)作為pivot(分區(qū)點)。遍歷p到r之...