数组元素积的符号【LC1822】
已知函数
signFunc(x)
将会根据x
的正负返回特定值:
- 如果
x
是正数,返回1
。- 如果
x
是负数,返回-1
。- 如果
x
是等于0
,返回0
。给你一个整数数组
nums
。令product
为数组nums
中所有元素值的乘积。返回
signFunc(product)
。
2022/10/27
今天的真简单~
-
思路:模拟,遇到0直接返回0,遇到负数将结果乘以-1,遇到正数积的符号不变,不作处理
-
实现
class Solution { public int arraySign(int[] nums) { int res = 1; for (int i = 0; i < nums.length; i++){ if (nums[i] == 0){ return 0; }else if(nums[i] < 0){ res *= -1; } } return res; } }
-
复杂度
- 时间复杂度: O ( n ) O(n) O(n)
- 空间复杂度: O ( 1 ) O(1) O(1)