如果我有了n
不同的整數作爲其按鍵順序統計二元平衡的樹,我想寫功能find(x)
返回的最小整數,是不是在樹上,並且大於x
。在O(log(n))
時間。失蹤人數
例如,如果樹中的密鑰是6,7,8,10,11,13,14
,則find(6)=9
,find(8)=9
,find(10)=12
,find(13)=15
。
我想尋找在O(log(n))
的max
和x
(標記)在O(log(n))
索引那麼如果i_x=n-(m-x)
那麼我可以簡單地返回max+1
。
通過指數我指的是6,7,8,10,11,13,14
6指數爲0,10指數是3,例如...
但我有與其他案件的麻煩......
像平常一樣尋找x。然後從x執行Depth first style搜索,以便每個整數都是前一個的增量。如果它沒有,那麼你找到你的整數。 – Striker
@Striker但是對於具有'find(1)'的'1,2,3,4,5,6,7,9',它將是'O(n)',不是嗎? – dan785317
對於最壞的情況是,它將是O(n)。 – Striker