新乡网站seo优化,网站seo什么意思,网站空间如何续费,搜索引擎有哪些本文属于「征服LeetCode」系列文章之一#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁#xff0c;本系列将至少持续到刷完所有无锁题之日为止#xff1b;由于LeetCode还在不断地创建新题#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章… 本文属于「征服LeetCode」系列文章之一这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁本系列将至少持续到刷完所有无锁题之日为止由于LeetCode还在不断地创建新题本系列的终止日期可能是永远。在这一系列刷题文章中我不仅会讲解多种解题思路及其优化还会用多种编程语言实现题解涉及到通用解法时更将归纳总结出相应的算法模板。 为了方便在PC上运行调试、分享代码文件我还建立了相关的仓库https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目归纳、通用解法总结等还可以看到原题出现频率和相关企业等重要信息。如果有其他优选题解还可以一同分享给他人。 由于本系列文章的内容随时可能发生更新变动欢迎关注和收藏征服LeetCode系列文章目录一文以作备忘。 如果数组的每一对相邻元素都是两个奇偶性不同的数字则该数组被认为是一个 特殊数组 。
Aging 有一个整数数组 nums。如果 nums 是一个 特殊数组 返回 true否则返回 false。
示例 1
输入nums [1]
输出true
解释
只有一个元素所以答案为 true。示例 2
输入nums [2,1,4]
输出true
解释
只有两对相邻元素 (2,1) 和 (1,4)它们都包含了奇偶性不同的数字因此答案为 true。示例 3
输入nums [4,3,1,6]
输出false
解释
nums[1] 和 nums[2] 都是奇数。因此答案为 false。提示
1 nums.length 1001 nums[i] 100 解法 遍历判断相邻元素
遍历数组如果存在一对相邻元素它们的奇偶性不同返回 false 。如果不存在返回 true 。
class Solution:def isArraySpecial(self, nums: List[int]) - bool:return all(x % 2 ! y % 2 for x, y in pairwise(nums))class Solution {public boolean isArraySpecial(int[] nums) {for (int i 1; i nums.length; i) {if (nums[i - 1] % 2 nums[i] % 2) {return false;}}return true;}
}class Solution {
public:bool isArraySpecial(vectorint nums) {for (int i 1; i nums.size(); i) {if (nums[i - 1] % 2 nums[i] % 2) {return false;}}return true;}
};func isArraySpecial(nums []int) bool {for i : 1; i len(nums); i {if nums[i-1]%2 nums[i]%2 {return false}}return true
}impl Solution {pub fn is_array_special(nums: Veci32) - bool {for i in 0 .. nums.len() - 1 {if nums[i] % 2 nums[i 1] % 2 {return false;}}return true;}
}复杂度分析
时间复杂度 O ( n ) O(n) O(n) 其中 n n n 是 n u m s nums nums 的长度。空间复杂度 O ( 1 ) O(1) O(1) 。