Titulo
Dada una matriz de tamaño n, encuentre la mayoría de los elementos. La mayoría de los elementos se refieren a elementos que ocurren más de ⌊ n / 2 ⌋ en la matriz.
Puede suponer que la matriz no está vacía, y siempre habrá una mayoría de elementos en una matriz determinada.
Ejemplo 1:
Entrada: [3,2,3]
Salida: 3
Ejemplo 2:
Entrada: [2,2,1,1,1,2,2]
Salida: 2
Ideas para resolver problemas e ideas de código
- Guardar con el mapa, el valor correspondiente a la clave es el número de la clave;
- Debido a que la matriz de la cuenta del problema no debe estar vacía y debe haber una mayoría de elementos, cuando el número de claves> n / 2, la clave es la mayoría de los elementos.
Código
class Solution {
public:
int majorityElement(vector<int>& nums) {
map<int, int> record;
int result;
for(int i = 0; i < nums.size(); i++){
record[nums[i]]++;
if(record[nums[i]] > (nums.size() / 2)){
result = nums[i];
break;
}
}
return result;
}
};