191.js 540 B

123456789101112131415161718192021222324252627
  1. 'use strict'
  2. /**
  3. * @param {number} n - a positive integer
  4. * @return {number}
  5. */
  6. var hammingWeightOld = function (n) {
  7. let res = 0
  8. for (let i = 0; i < 32; i++) {
  9. res += n & 1
  10. n >>= 1
  11. }
  12. return res
  13. }
  14. // simple solution using built-in
  15. var hammingWeight = function (n) {
  16. return (n).toString(2).replace(/0/g, '').length
  17. }
  18. function __main__() {
  19. /*eslint no-console: ["error", { allow: ["log"] }] */
  20. console.log(hammingWeight(0xFFFFFFFF))
  21. console.log(hammingWeightOld(0xFFFFFFFF))
  22. }
  23. __main__()