Algorithmen und Datenstrukturen · Middle · Frage 62 von 75
Was macht x & (x - 1) bei einer positiven ganzen Zahl x?
- 1Liefert, wie viele Bits in der Zahl gesetzt sind
- 2Verschiebt die Zahl um ein Bit nach links
- 3Löscht das niedrigste gesetzte Bit (0 nur bei Zweierpotenzen)
Antwort zeigen
Richtige Antwort: Löscht das niedrigste gesetzte Bit (0 nur bei Zweierpotenzen)
Erklärung
Subtraktion von 1 kippt die niedrigste 1 und die Nullen darunter; AND entfernt dieses Bit. Also prüft x & (x - 1) === 0 auf eine Zweierpotenz, und Wiederholen zählt die gesetzten Bits.