0Pricing
Competitive Programming Academy · Lektion

AND, OR, XOR und Shifts

Lesen und kombinieren Sie Bits sicher

AND, OR, XOR und Shifts ist eine kostenlose Competitive Programming Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Competitive Programming Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Competitive Programming Academy-Kurs umfasst insgesamt 4 Lektionen.

Bits sind Ihr Werkzeug

Jede Ganzzahl ist im Grunde eine Reihe von Bits, also nur Nullen und Einsen. Wenn Sie lernen, sie zu lesen und zu kombinieren, erhalten Sie schnelle, clevere Tricks für Programmierwettbewerbe. 🔧

Das Binärformat anzeigen

Verwenden Sie Pythons bin(), um die Bits einer beliebigen Zahl anzuzeigen. Das Präfix 0b kennzeichnet lediglich die Binärdarstellung; der Rest ist das Bitmuster.

print(bin(13))  # 0b1101

AND behält gemeinsame Bits

Der AND-Operator (&) liefert nur dort eine 1, wo beide Zahlen eine 1 haben. Er eignet sich hervorragend zum Prüfen oder Maskieren gemeinsamer Bits.

print(6 & 3)  # 0b110 & 0b011 = 0b010 = 2

OR kombiniert Bits

Der OR-Operator (|) liefert überall eine 1, wo mindestens eine der beiden Zahlen eine 1 hat. Verwenden Sie ihn, um Flags zu aktivieren, ohne den Rest zu verändern.

print(6 | 1)  # 0b110 | 0b001 = 0b111 = 7

XOR findet Unterschiede

Der XOR-Operator (^) liefert dort eine 1, wo sich die beiden Bits unterscheiden. Bei Programmierwettbewerben wird er häufig zum Umschalten und zum Finden des einzigen abweichenden Werts verwendet.

print(6 ^ 3)  # 0b110 ^ 0b011 = 0b101 = 5

XOR hebt sich selbst auf

Eine Zahl XOR sich selbst ergibt immer 0, und XOR mit 0 lässt die Zahl unverändert. Diese Eigenschaft der Selbstaufhebung ist die Grundlage vieler XOR-Rätsel.

print(7 ^ 7)  # 0
print(7 ^ 0)  # 7

Die eindeutige Zahl finden

Wenn jeder Wert außer einem zweimal vorkommt, verknüpfen Sie alle Werte mit XOR, und die Paare verschwinden. Übrig bleibt der eindeutige Wert.

ans = 0
for x in [4, 1, 2, 1, 2]:
    ans ^= x
print(ans)  # 4

Linksverschiebung multipliziert

Eine Linksverschiebung bewegt Bits nach oben und fügt rechts Nullen hinzu. Jede Verschiebung um eins verdoppelt den Wert, ähnlich wie die Multiplikation mit einer Zweierpotenz.

print(3 << 2)  # 3 * 4 = 12

Rechtsverschiebung dividiert

Eine Rechtsverschiebung entfernt Bits am rechten Ende. Jede Verschiebung um eins halbiert den Wert und führt eine Ganzzahldivision durch eine Zweierpotenz aus.

print(20 >> 2)  # 20 // 4 = 5

Eine Zweierpotenz erzeugen

Wenn Sie 1 um k Stellen nach links verschieben, erzeugen Sie sofort den Wert 2 hoch k. Das ist die sauberste Methode, Einzelbitmasken zu erstellen.

print(1 << 5)  # 32

Geschwindigkeit zählt bei Wettbewerben

Bitweise Operatoren werden in einem einzigen schnellen Schritt ausgeführt. Daher kann der Ersatz arithmetischer Berechnungen durch Verschiebungen ein knappes Zeitlimit retten. Sie sollten sie sicher beherrschen. ⚡

Schnelltest

Zeit, Ihre Bitoperatoren zu testen.

Rückblick: Bitoperatoren

Sie haben AND, OR, XOR und Verschiebungen kennengelernt: Bits in einem schnellen Schritt kombinieren, umschalten und skalieren. Das sind die Bausteine für jeden kommenden Bittrick. 🎉

Häufig gestellte Fragen

Ist die Lektion „AND, OR, XOR und Shifts“ kostenlos?

Ja — der vollständige Text von „AND, OR, XOR und Shifts“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Competitive Programming Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Competitive Programming Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „AND, OR, XOR und Shifts“?

Lesen und kombinieren Sie Bits sicher Du übst Competitive Programming Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Competitive Programming Academy zu starten?

Keine Vorkenntnisse erforderlich. Competitive Programming Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „AND, OR, XOR und Shifts“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Competitive Programming Academy-Lektion Code schreiben und ausführen?

Ja. Jede Competitive Programming Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. AND, OR, XOR und Shifts
  2. Ein Bit setzen, löschen und umschalten
  3. Bits und das niedrigste gesetzte Bit zählen
  4. Bitmasken als kleine Mengen
← Zurück zu Competitive Programming Academy