Two Pointer
Two Pointer
class Solution {
public int maxOperations(int[] nums, int k) {
Arrays.sort(nums);
int n = nums.length,l = 0,r = n-1;
while(l<r){
if(nums[l]+nums[r]==k){
maxOperations++;
l++;
r--;
}
else if(k<nums[l]+nums[r]) r--;
else l++;
}
return maxOperations;
}
}
Using HashMap→TC=O(n),SC=O(n)
class Solution {
public int maxOperations(int[] nums, int k) {
HashMap<Integer, Integer> numCount = new HashMap<>();
int maxOperations = 0;
return maxOperations;
}
}