gpt4 book ai didi

algorithm - 关于二进制搜索中的最坏情况

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:41:09 25 4
gpt4 key购买 nike

二进制搜索的最坏情况是 1 + lg n,但是如果元素在排序数组中或元素不在排序数组中,这种更坏情况会改变吗?我认为应该通过更少的搜索来确定该元素不在数组中,或者搜索是否保持不变

最佳答案

假设您必须在最坏的情况下进行 k 比较,以便检查元素是否在数组中。在最后一次(kth)比较中,如果key不匹配,则元素显然不在数组中。因此,如果元素在 kth 比较后不在数组中,则无需再进行任何比较。

因此,无论元素是否在排序数组中,最坏的情况都应该保持不变,在 k=ceil(log(n))

同样,在线性搜索的情况下,假设键位于​​数组的最后一个位置。我们需要 n 比较,如果数组的最后一个元素与键不匹配,我们可以断定该元素不在数组中。我们不需要任何更多的比较,最坏的情况将是相同的(在 n),无论元素是否存在于数组中。

关于algorithm - 关于二进制搜索中的最坏情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41867265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com