Algorithm 在顺序搜索中查找所有匹配项的时间

Algorithm 在顺序搜索中查找所有匹配项的时间,algorithm,search,matching,sequential,Algorithm,Search,Matching,Sequential,在顺序搜索中查找一个匹配项所需的时间为 T(n)=n 在一个给定的数组中找到键的所有匹配项,并且数组中的所有元素都是唯一的,怎么样?? T(n)=?唯一性约束不会改变所花费的时间,因为如果元素仅在末尾,您仍然需要查看每个元素才能找到它 查找多个匹配项也不会改变所花费的时间,因为只需遍历一次数组就可以找到所有元素 因此所花费的时间仍然是T(n)=n,或者O(n) 虽然我不确定如何才能有多个匹配项和唯一性-如果元素是唯一的,则只能有一个匹配项。对于要在Arrary中搜索的任何键,例如key=5,如果

在顺序搜索中查找一个匹配项所需的时间为 T(n)=n 在一个给定的数组中找到键的所有匹配项,并且数组中的所有元素都是唯一的,怎么样??
T(n)=?

唯一性约束不会改变所花费的时间,因为如果元素仅在末尾,您仍然需要查看每个元素才能找到它

查找多个匹配项也不会改变所花费的时间,因为只需遍历一次数组就可以找到所有元素

因此所花费的时间仍然是
T(n)=n
,或者
O(n)


虽然我不确定如何才能有多个匹配项和唯一性-如果元素是唯一的,则只能有一个匹配项。

对于要在Arrary中搜索的任何键,例如key=5,如果A(1)=键这一个匹配项,如果A(4)=键这是另一个匹配项,如果A(6)=键入另一个匹配项,依此类推,您对答案的看法是什么?二进制搜索将花费
O(logn)
(或
T(n)=logn
)时间(当然假设数组已排序)。明白了。。。thanx非常抱歉打扰你,但我还有一个问题,如果使用分治搜索来查找所有匹配的时间,那么它将是??它也将是
O(n)
-分治和征服在这里没有帮助。如果数组被排序,它将有帮助,我只需要找到一个匹配??