Sort by

recency

|

1947 Discussions

|

  • + 0 comments

    Time Complexity:

    def equalizeArray(arr:list):
        lenght = len(arr)
        frequency = {}
        for num in arr:
            if num not in frequency:
                frequency[num] = 1
            else:
                frequency[num] += 1
        
    
        return abs(max(frequency.values()) - lenght)
    
  • + 0 comments
        Comparator<Long> longComparator = Long::compare;
        Map<Integer, Long> valueMap = arr.stream().collect(Collectors.groupingBy(s -> s, Collectors.counting()));
        List<Long> values = valueMap.values().stream().sorted(longComparator.reversed()).collect(Collectors.toList());
        long mostrepeated = values.get(0);
        long totaloccurences= values.stream().mapToLong(s->s).sum();
        return (int)(totaloccurences - mostrepeated);
    
  • + 1 comment

    Jaav 8 solution

        int maxRepeat = 0;
    
            for(int i = 0; i < arr.size(); i++){
                int num = arr.get(i);
                int RepeatNum = 0;
    
                for(int j = 0; j < arr.size(); j++){
                    if(arr.get(j) == num){
                        RepeatNum++;
                    }
                }
                if(maxRepeat < RepeatNum){
                    maxRepeat = RepeatNum;
                }
            }
            return arr.size() - maxRepeat;
    
  • + 0 comments

    Python solution

    def equalizeArray(arr):
        arr_dict = Counter(arr)
        max_num_arr = max(arr_dict.values())
        return len(arr)-max_num_arr
    
  • + 0 comments

    Here is problem solution in Python, Java, C++, C and Javascript - https://programmingoneonone.com/hackerrank-equalize-the-array-problem-solution.html