数组元素积的符号【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 ( 1 )