這是我想要計算時間複雜度的僞代碼,我認爲它是一種二分搜索算法,但是當計算複雜性時我失敗了,因爲它正在減少logarithamic。什麼是這個僞代碼的大O?我還需要一個適當的解釋
USE variables half-array,found,middle element
SET half-array=initial array;
SET found=True;
Boolean SearchArray(half-array)
find middle element in half-array;
Compare search key with middle element;
IF middle element==search key THEN
SET found=True;
ELSE
IF search key< middle element THEN
SET half-array=lower half of initial array;
ELSE
SET half-array=upper half of initial array;
SearchArray(half-array)
你只運行一次方法,還是你遞歸運行它? – obizues
遞歸運行 –
它的二進制搜索,log(n) – nafas