Frequency Queries

  • + 0 comments

    my JS solution

    function freqQuery(queries) {
        const count = []
        const resultMap = new Map()
    
        queries.forEach(([operation, value]) => {
            switch (operation) {
                case 1: {
                    return resultMap.set(value, (resultMap.get(value) || 0) + 1)
                }
                case 2: {
                    return resultMap.get(value) && resultMap.set(value, resultMap.get(value) - 1) 
                }
                case 3: {
                    const values = [...resultMap.values()];
                        if (values.indexOf(value) > -1) {
                            count.push(1);
                        } else {
                            count.push(0);
                        }
                    }
            }
        })
    
        return count
    }