zl程序教程

您现在的位置是:首页 >  后端

当前栏目

1550. 存在连续三个奇数的数组-遍历

遍历数组 存在 三个 连续 奇数
2023-09-14 09:06:49 时间

1550. 存在连续三个奇数的数组

给你一个整数数组 arr,请你判断数组中是否存在连续三个元素都是奇数的情况:如果存在,请返回 true ;否则,返回 false 。

示例 1:

输入:arr = [2,6,4,1]
输出:false
解释:不存在连续三个元素都是奇数的情况。

示例 2:

输入:arr = [1,2,34,3,4,5,7,23,12]
输出:true
解释:存在连续三个元素都是奇数的情况,即 [5,7,23] 。

这一题也是很简单啦,不过,我们在设计算法的时候,可以考虑尽可能的加快遍历,博主解题代码如下:

bool threeConsecutiveOdds(int* arr, int arrSize){
    for(int i=0;i<arrSize-2;i++){
        if(arr[i]%2==1){
            if(arr[i+1]%2==1){
                if(arr[i+2]%2==1){
                    return true;
                }
                else{
                    i=i+2;
                }

            }
            else{
                i++;
            }
           
        }
       
        
    }
    return false;

}