Missing Numbers

  • + 0 comments

    Java

    public static List<Integer> missingNumbers(List<Integer> arr, List<Integer> brr) {
            // Write your code here
            List<Integer> result = new ArrayList<>();
    
            Map<Integer, Integer> freqArr = new HashMap<>();
            Map<Integer, Integer> freqBrr = new HashMap<>();
    
            for (int num : arr) {
                freqArr.put(num, freqArr.getOrDefault(num, 0) + 1);
            }
    
            for (int num : brr) {
                freqBrr.put(num, freqBrr.getOrDefault(num, 0) + 1);
            }
    
            for (Map.Entry<Integer, Integer> entry : freqBrr.entrySet()) {
                int num = entry.getKey();
                int freqInBrr = entry.getValue();
                int freqInArr = freqArr.getOrDefault(num, 0);
    
                if (freqInBrr > freqInArr) {
                    result.add(num);
                }
            }
    
            Collections.sort(result);
    
            return result;
        }