簡體   English   中英

在對數時間內以未排序的數組搜索

[英]searching in an unsorted array in logrithmic time

我目前正在攻讀算法入門考試,我遇到了一個我無法解決的問題,問題是:你有一個n個整數的數組,前m個元素是偶數,剩下的元素很奇怪。 您需要編寫一個算法來查找m的值(找到最后一個偶數的索引),並且時間復雜度為O(log m)。

我想做類似於二分搜索的事情,如果奇數就向左移動,如果直到我發現索引是偶數並且他的下一個是奇數,則向右移動但是這個東西在O(log n)而不是O(記錄m)。

從索引1開始,然后繼續將索引加倍,直到找到奇數條目。 這為你提供了m時間O(log m)的上限。 然后進行二分查找。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM