【发布时间】:2023-04-05 09:23:01
【问题描述】:
假设我有一个包含以下值的数组:0,1,0,0,0,1,0,1,1
我目前正在循环遍历我的数组并将 1 替换为 0。但是,如果我的数组中还剩下 2 个 1,我会跳出这个循环。我真的没有太多的代码,但这是我一直在做的事情的一个存根
if(//There are more than 2 1s ){
return true; //carry on looping
}
return false; //break the loop
我不知道如何区分 0 和 1,所以我很困惑如何让它工作。任何想法将不胜感激。
【问题讨论】:
-
使用计数器临时变量。
-
先数1的个数。只做一次(你的逻辑会让你在每个循环中计算一次)。
-
向后循环并跳过前两个 1 不是更好吗?
-
位运算符可能有用。
-
标题中的任务(检查数组中是否至少有两个1)和内容中的任务(全部删除,直到剩下2个)是两个不同的任务。你想解决哪一个?