Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

120
Views
Número de 1 bits con Javascript

Pregunta : escriba una función que tome un número entero sin signo y devuelva el número de bits '1' que tiene (también conocido como el peso de Hamming).

Ejemplo 1 :

Entrada: n = 00000000000000000000000000001011

Salida: 3

Explicación: La cadena binaria de entrada 00000000000000000000000000001011 tiene un total de tres bits '1'.

Mi código

 var hammingWeight = function(n) { for (i=0; i<32; i++) { var mask = 1; var count = 0; if ((mask & n) != 0 ) { mask <<= 1; count++; } return count; } };

Caso de prueba :

 00000000000000000000000000001011 00000000000000000000000010000000 11111111111111111111111111111101

Salida esperada :

 3 1 31

Salida :

 1 0 1

¿Qué hice mal con mi código?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Tienes algunos problemas aquí:

  • Está redefiniendo el count y la mask dentro de su bucle for .
  • Está return después de la primera iteración del bucle, en lugar de esperar a que todo cuente.
  • Solo cambia la mask si un bit es 1 .

Aquí hay una función corregida:

 var hammingWeight = function(n) { var count = 0; var mask = 1; for (i=0; i<32; i++) { if ((mask & n) != 0 ) { count++; } mask <<= 1; } return count; };
about 4 years ago · Juan Pablo Isaza Report

0

Una forma más corta de escribir esto podría ser:

 const hammingWeight = value => [...value].filter(f => f == 1).length;

Explicación:

[...value] esto creará una matriz de 0 y 1 en función de su cadena

.filter(f => f == 1) filtrará la matriz, manteniendo solo los valores 1

.length le da la longitud de la matriz filtrada

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!