gpt4 book ai didi

c++ - 如何判断数组100个数不相等

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

我正在编写一个数独程序。我发现数组中的数字很难确定是否相互复制。

现在我有一个数组:int streamNum[SIZE]

  • 如果 SIZE=3,我可以像这样处理这个问题:if(streamNum[0]!=streamNum[1])...
  • 如果 SIZE=100,我认为我需要一个更好的解决方案,有没有标准做法?

最佳答案

有几种不同的方法可以做到这一点,我想最简单的是写两个循环

bool has_duplicate = false;
for (int i = 0; i < SIZE && !has_duplicate; ++i)
for (int j = i + 1; j < SIZE && !has_duplicate; ++j)
if (streamNum[i] == streamNum[j])
has_duplicate = true;
if (has_duplicate)
{
...
}
else
{
...
}

第一个循环遍历数组中的每个元素,第二个循环检查数组的剩余元素中是否有重复元素(这就是它从 i + 1 开始的原因)。一旦找到重复项,两个循环都会退出(这就是 && !has_duplicate 所做的)。

这不是最有效的方法,更有效的方法是在查找重复项之前对数组进行排序,但同时会修改数组的内容。

希望我已经足够了解您的要求。

关于c++ - 如何判断数组100个数不相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19206458/

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