在 C++ 中遵守给定约束条件来寻找重复项


假设我们有一个包含 6 个不同数字的列表。其中只有一个数字重复了五次。因此,数组中共有 10 个元素。只使用两次比较来查找重复数字。如果列表如下 [1, 2, 3, 4, 4, 4, 4, 4, 5, 6],则输出为 4。

由于只有 10 个数字,因此对于任何类型的重复数字,数字的范围将从索引 3 到 5。通过检查这些索引,我们可以找出结果。

实例

#include<iostream>
using namespace std;
int getDuplicate(int array[]) {
   if (array[3] == array[4])
      return array[3];
   else if (array[4] == array[5])
      return array[4];
   else
      return array[5];
}
int main() {
   int a[] = {1, 2, 3, 4, 4, 4, 4, 4, 5, 6};
   cout << "Duplicate element: " << getDuplicate(a);
}

输出

Duplicate element: 4

更新于: 2019 年 11 月 1 日

141 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告