0

如果存在一对乘积为偶数的数字,我如何编写一个接受整数数组并返回 true 的函数?

偶数的性质是什么?当然,你如何用 Java 编写这个函数?另外,也许是对您如何为实际实现制定算法的简短解释。这是来自书中的,但我只是想学习解释。

4

4 回答 4

2

如果其中至少有一个是偶数,则一对整数总是会产生偶数乘积。如果两者都是奇数,它就不能产生偶数产品。因此,您只需要检查数组中是否至少有 1 个偶数。

于 2013-01-31T04:23:15.223 回答
2

这是一个数学概念和已知事实,任何偶数乘以任何其他数都是偶数。因此,如果数组中的任何一个数字是偶数,您所要做的就是返回 true。

于 2013-01-31T04:23:21.523 回答
2

正如其他人所指出的,只有一个偶数就足够了。

您只需要迭代直到找到偶数,或者在数组的末尾没有偶数。

public static boolean hasEvenNumber(int[] vals) {
    int i = 0;
    while(i < vals.length) {
        if(vals[i] % 2 == 0) {
            return true;
        }
        i++;
    }
    return false;
} 
于 2013-01-31T04:44:33.380 回答
-1

算法很简单。

您需要一个偶数应该出现在整数数组中。

因为偶数与奇数/偶数的倍数导致偶数。因此,如果有偶数,则可以返回 true。

在 java 中,

public static int  has_even_pair(int [ ] values,int n)  //method definition to find sum
{
      int i;
      for(i=0; i< n; i++)
      {
          if (values[i] % 2 == 0 )
          {
               return 1;

           }

      }

      return 0 ;
 }
于 2013-01-31T04:22:47.747 回答