使用二分搜索检查排序的非顺序数组是否有重复项?

标签 c arrays duplicates binary-search

我有一个排序数组,但它不一定是连续的,我需要知道>如果它包含任何重复项

Array : | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 8 |

我知道我们可以在 O(n) 中线性遍历检查它是否包含任何重复项,但我想知道是否可以使用二分搜索。

最佳答案

不,你不能用二分搜索来做到这一点。所有算法至少需要线性时间。

关于使用二分搜索检查排序的非顺序数组是否有重复项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31321454/

相关文章:

c - 这两个代码片段有什么区别?

java - 如何为字符串Java中的每个字符赋值

Java -for循环只重复最后一个值

python - 在python中识别具有不同列名的重复列值的列

R - 在数据框的子集中找到所有唯一值

我的代码中 strncpy 中查找并打印最长单词的编译错误

c - 为什么这么多示例链表将 next 指针放在每个节点的末尾而不是开头?

javascript - 通过变量 .-string 插值访问 JSON 数据

javascript - 删除数字数组中的所有重复数字

c - 在哪里可以找到平台宏?