1
算法核心如下所示。獲取運行時間T(n)
CHECK_VALUE_IN_ARRAY(array, n, value)
for i = 1 to n
binary_search(array, i, n, value)
而且已經知道binary_search(陣列,1,N,值)的T(N)=西塔(LGN) 如何讓T(n)的?
PS: 我的步驟:
T(n) = t(n) + t(n-1) + ... + t(1)
= lg(n) + lg(n-1) + ... + lg(1)
= lgn!
這是正確的?
CHECK_VALUE_IN_ARRAY(array,n,value)for i = 1 to n binary_search(array,i,n,value) – xren
你卡在什麼部分?你有沒有嘗試總結二進制搜索的運行時間爲我的每個值? –
'binary_search'做什麼?它的運行時依賴於「我」嗎? – user2357112