Se puede contar el número de ocurrencias de cada carácter en una cadena usando una tabla hash (también conocida como diccionario o mapa). Los pasos específicos son los siguientes:
- Repita la cadena y, para cada carácter, utilícelo como la clave de la tabla hash y el número de veces que aparece como el valor de la tabla hash.
- Si el carácter ya existe en la tabla hash, agregue 1 a su valor correspondiente; de lo contrario, agregue la clave en la tabla hash y establezca su valor en 1.
- Una vez que se completa el recorrido, los pares clave-valor en la tabla hash representan el número de ocurrencias de cada carácter en la cadena.
Aquí hay una posible implementación de JavaScript:
function countCharacters(str) {
const count = {
};
for (const char of str) {
count[char] = (count[char] || 0) + 1;
}
return count;
}
// 示例用法
const str = 'hello, world!';
const result = countCharacters(str);
console.log(result); // { h: 1, e: 1, l: 3, o: 2, ',': 1, ' ': 1, w: 1, r: 1, d: 1, '!': 1 }
En esta implementación, usamos una tabla hash count
para registrar el número de ocurrencias de cada carácter. Para cada carácter, lo convertimos en la clave de la tabla hash y el número de veces que aparece como el valor de la tabla hash. Si el carácter ya existe en la tabla hash, agregue 1 a su valor correspondiente; de lo contrario, agregue la clave en la tabla hash y establezca su valor en 1. Una vez que se completa el recorrido, los pares clave-valor en la tabla hash representan el número de ocurrencias de cada carácter en la cadena.