您的位置 首页 编程知识

特殊阵列i

3151。特殊阵列i 难度:> easy 主题: array special如果其每对相邻元素都包含两个…

3151。特殊阵列i

难度:> easy

主题: array

special如果其每对相邻元素都包含两个具有不同奇偶校验的数字。>您有一个整数数字。如果nums为a

special

数组,返回true,否则,返回false。 >>示例1:

>输入:

nums = [1]

  • >输出: true
  • >说明:只有一个元素。所以答案是正确的。
  • >>示例2:

>输入: nums = [2,1,4]

  • >输出: true
  • >说明:只有两对:(2,1)和(1,4),并且两个对都包含具有不同奇偶校验的数字。所以答案是正确的。
  • >示例3:

>输入: nums = [4,3,1,6]

    >输出:

  • false
  • >说明:

  • nums [1]和nums [2]都是奇数。所以答案是错误的。
  • >约束:>

1 > 1

  • 提示:

>尝试检查每个元素及其先前元素的奇偶校验。

>

解决方案:

  1. 我们需要通过检查给定数组是否为“特殊”,通过检查每个相邻的元素是否包含两个具有不同奇偶校验的数字(一个偶数,一个奇数)。您可以实现以下方式:

>检查数组的长度

:如果数组只有一个元素,则自动被视为特殊。

>通过数组

    迭代:对于每对相邻元素,检查它们是否具有不同的奇偶元。

  1. 返回结果:如果所有相邻对的奇偶校验都不同,请返回true;否则,返回false。
  2. >让我们在php中实现此解决方案: 3151。特殊阵列i
  3. <?php /**  * @param Integer[] $nums  * @return Boolean  */ function isArraySpecial($nums) {     ...     ...     ...     /**      * go to ./solution.php      */ }  // Test cases $nums1 = [1]; $nums2 = [2, 1, 4]; $nums3 = [4, 3, 1, 6];  echo isArraySpecial($nums1) ? 'true' : 'false'; // Output: true echo " "; echo isArraySpecial($nums2) ? 'true' : 'false'; // Output: true echo " "; echo isArraySpecial($nums3) ? 'true' : 'false'; // Output: false echo " "; ?> 
    登录后复制

    解释:

边缘案例:

如果数组只有一个元素,则自动被视为特殊数组,因为没有相邻的对检查。

  1. 检查相邻元素:>

      >从第二个元素开始的数组迭代。

    • >
    • 使用modulo操作员%确定相邻元素的均衡:

  2. nums [i]%2 == 0表示数字均匀。

  3. >

    nums [i]%2 == 1表示数字是奇数的。>

      将当前元素数字[i]的奇偶校验与以前的元素nums [i-1]进行比较。如果他们具有相同的奇偶校验,请返回false。

      • 返回true:
    • 如果所有相邻对都有不同的平式,请返回true。

    • >
  4. 此解决方案以

    >o(n)

    >运行,其中

    n

是数组的长度,使其有效地效率给定约束。 联系链接 如果您发现此系列有帮助,请考虑在hub上给出 reposority cository >在您喜欢的上分享帖子。您的支持对我来说意义重大!>

如果您想要这样的更多有用的内容,请随时关注我:

>

linkedin

github

以上就是特殊阵列i的详细内容,更多请关注php中文网其它相关文章!

本文来自网络,不代表四平甲倪网络网站制作专家立场,转载请注明出处:http://www.elephantgpt.cn/6611.html

作者: nijia

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

18844404989

在线咨询: QQ交谈

邮箱: 641522856@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部