二分查找算法舉例說(shuō)明 在一個(gè)有序數(shù)列中查找,二分查找是最優(yōu)算法嗎?
在一個(gè)有序數(shù)列中查找,二分查找是最優(yōu)算法嗎?二進(jìn)制搜索的時(shí)間復(fù)雜度為O(log2n)。如果比較可以達(dá)到K等分(即排除相同長(zhǎng)度的K-1),則時(shí)間復(fù)雜度為O(logkn),復(fù)雜度的順序相同。但是,計(jì)算量較
在一個(gè)有序數(shù)列中查找,二分查找是最優(yōu)算法嗎?
二進(jìn)制搜索的時(shí)間復(fù)雜度為O(log2n)。如果比較可以達(dá)到K等分(即排除相同長(zhǎng)度的K-1),則時(shí)間復(fù)雜度為O(logkn),復(fù)雜度的順序相同。但是,計(jì)算量較小。事實(shí)上,B-樹(shù)就是這個(gè)想法
如果它是一個(gè)小數(shù)點(diǎn),由下標(biāo)和除以2得到,直接向下舍入意味著0.5
二進(jìn)制搜索算法是一個(gè)快速搜索算法。當(dāng)我們?cè)诹硪粋€(gè)數(shù)組中尋找一個(gè)數(shù)字時(shí),我們通常直接遍歷這個(gè)數(shù)組直到找到這個(gè)數(shù)字。時(shí)間復(fù)雜度為O(n)。如果有大量的數(shù)據(jù),我們可以使用簡(jiǎn)單快速的搜索算法二進(jìn)制搜索算法,也稱(chēng)為半搜索算法。