Sort by

recency

|

3608 Discussions

|

  • + 0 comments

    java script solution within one loop

    function migratoryBirds(arr) {
      // Write your code here
      let resObj = {};
      let hightest;
      let key;
      arr.forEach((element) => {
        if (resObj[element]) {
          resObj[element] = resObj[element] + 1;
          if (hightest && key) {
            if (resObj[element] > hightest) {
              hightest = resObj[element];
              key = element;
            } else if (resObj[element] == hightest) {
              if (element < key) {
                key = element;
              }
            }
          } else {
            hightest = resObj[element];
            key = element;
          }
        } else {
          resObj[element] = 1;
        }
      });
    
      return key;
    }
    
  • + 0 comments

    Golang

    func migratoryBirds(arr []int32) int32 {
        var m map[int32]int32 = make(map[int32]int32)
        for i := range arr {
            el := arr[i]
            _, ok := m[el]
            if !ok {
                m[el] = 0
            } else {
                continue
            }
            
            for j := range arr {
                if el == arr[j] {
                    m[el] += 1
                }
            }
        }
        
        var mostFrequentlyId int32
        var current int32
        for k, o := range m {
            if o > current {
                mostFrequentlyId = k
                current = o
            }     
            
            if o == current && k < mostFrequentlyId {
                mostFrequentlyId = k
            }
        }
        
        return mostFrequentlyId
    }
    
  • + 0 comments

    Here is my c++ solution you can find the explanation here : https://youtu.be/poQPrHTMe08

    int migratoryBirds(vector<int> arr) {
        map<int, int> mp;
        int cnt = 0, id;
        for(int i = 0; i < arr.size(); i++)mp[arr[i]]++;
        for(auto it = mp.begin(); it != mp.end(); it++){
            if(it->second > cnt || (it->second == cnt && it->first < id)){
                cnt = it->second;
                id = it->first;
            }
        }
        return id;
    }
    
  • + 0 comments
    def migratoryBirds(arr):
        types = Counter(arr) 
        return (max(types, key=types.get))
    
  • + 0 comments

    Python3

    def migratoryBirds(arr):
        
        theCounter = [0,0,0,0,0] # It is guaranteed that each type is in 1-5
        
        for i in arr:
            theCounter[i - 1] += 1
    
    return theCounter.index(max(theCounter))+1