Is not arithmetic shift better in countSetBits.js?
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 38/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- javascript
- Ambito
- tooling
Direzione di ricerca
Start in countSetBits.js at the shift on the line using >>>= 1. Read the surrounding function and any nearby tests or documentation to determine the intended behavior for negative numbers. Done means the shift behavior is explicitly settled and the implementation and relevant tests consistently reflect that decision.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The file countSetBits.js has the function:
/**
* @param {number} originalNumber
* @return {number}
*/
export default function countSetBits(originalNumber) {
let setBitsCount = 0;
let number = originalNumber;
while (number) {
// Add last bit of the number to the sum of set bits.
setBitsCount += number & 1;
// Shift number right by one bit to investigate other bits.
number >>>= 1;
}
return setBitsCount;
}
I wonder if it wouldn't be better to use an arithmetic shift on line number >>>= 1 instead of a logical shift, thus preserving the sign of the number.
- Lingua principale
- JavaScript
- Stelle
- 197k
- Fork
- 31k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di trekhleb/javascript-algorithms
-
BinarySearchTreeNode removingForse già presa @bbonch l’ha presa 240 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
trekhleb/javascript-algorithms#2102 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
trekhleb/javascript-algorithms#2221 · 4 commenti ·
-
zh-TW translations missing — should contributors help complete?Forse già presa @anees4500 l’ha presa 331 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
trekhleb/javascript-algorithms#2085 · 6 commenti · 1 reazione ·
-
LinkedList methods.Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
trekhleb/javascript-algorithms#2065 · 1 commento ·
-
Incorrect Cycle Path Construction in detectUndirectedCycleForse già presa @gb3335 l’ha presa 216 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
trekhleb/javascript-algorithms#2057 · 1 commento ·
Tutte le issue di trekhleb/javascript-algorithms
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
smansfield635-create/smansfield635-create.github.io#5818 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
danjdewhurst/story-skills#538 ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
anoopcodehack/DevBoard#589 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 85/100
capricorn86/happy-dom#2474 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
vigetlabs/mega-menu-block#30 ·
I maintainer di solito rispondono entro 2 giorni