用Java或ssm做网站有什么区别成都新站软件快速排名
题解
如题所示,允许暴力,虽然是暴力,但复杂度也就O(n)
还是如昨天的题目一样,使用Set.add的方法去判断即可
分三种情况
因为是set集合的原因,所以可以排除值相同的原因
当遍历数组有值小于k就return -1
当遍历数组遇见等于k的值,使得ans–
当正常遍历数组的值时,使得ans++
class Solution {public int minOperations(int[] nums, int k) {int n = nums.length;HashSet<Integer> set = new HashSet<>();int ans = 0;for(int i=0;i<n;i++){if(nums[i]<k) return -1;if(set.add(nums[i])){System.out.println("nums[i]:"+nums[i]+",ans:"+ans);if(nums[i]==k) ans--;ans++;}}return ans;}}