Forberedelse til kodeinterviews · Lektion

AND, OR, XOR og shifts

Læs og kombinér bits med sikkerhed

Lektion 1 af 413 trin

AND, OR, XOR og shifts er en gratis Forberedelse til kodeinterviews-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Forberedelse til kodeinterviews, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Forberedelse til kodeinterviews-kurset indeholder 4 lektioner i alt.

Bit er dit værktøj

Ethvert heltal er i virkeligheden en række af bit, bare 0'er og 1-taller. Når du lærer at læse og kombinere dem, får du hurtige og smarte tricks til konkurrencer. 🔧

Se det binære

Brug Pythons bin() til at se bittene i et hvilket som helst tal. Præfikset 0b markerer blot, at tallet er binært; resten er bitmønstret.

print(bin(13))  # 0b1101

AND bevarer fælles bit

AND-operatoren (&) giver 1, kun hvor begge tal har 1. Den er perfekt til at kontrollere eller maskere fælles bit.

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

OR kombinerer bit

OR-operatoren (|) giver 1, overalt hvor mindst ét af tallene har 1. Brug den til at slå flag til uden at ændre resten.

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

XOR finder forskelle

XOR-operatoren (^) giver 1, hvor de to bit er forskellige. Den er populær i konkurrencer til at skifte bit og finde den eneste værdi uden et par.

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

XOR ophæver sig selv

Et tal XOR med sig selv er altid 0, og XOR med 0 lader tallet være uændret. Denne selvophævende egenskab ligger bag mange XOR-opgaver.

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

Find det unikke tal

Hvis alle værdier forekommer to gange undtagen én, skal du XOR'e dem alle sammen, så forsvinder parrene. Det, der er tilbage, er den unikke værdi.

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

Venstreskift multiplicerer

Et venstreskift flytter bit opad og tilføjer nuller til højre. Hvert skift på én plads fordobler værdien, ligesom multiplikation med en potens af to.

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

Højreskift dividerer

Et højreskift fjerner bit fra højre side. Hvert skift på én plads halverer værdien og udfører heltalsdivision med en potens af to.

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

Opret en potens af to

Hvis du skifter 1 k pladser til venstre, opbygger du straks værdien 2 i k'te potens. Det er den enkleste måde at oprette masker med én enkelt bit.

print(1 << 5)  # 32

Hastighed betyder noget i konkurrencer

Bitvise operatorer kører i ét hurtigt trin, så det at erstatte aritmetik med skift kan redde en løsning, der ellers lige overskrider tidsgrænsen. Kend dem grundigt. ⚡

Hurtigt tjek

Tid til at teste dine bitoperatorer.

Opsummering: Bitoperatorer

Du har mødt AND, OR, XOR og skift: kombinér, skift og skalér bit i ét hurtigt trin. Det er byggestenene til alle de bittricks, der kommer. 🎉

Gratis at komme i gang

Lær Forberedelse til kodeinterviews med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
90
Lektioner
360

Ofte stillede spørgsmål

Er lektionen “AND, OR, XOR og shifts” gratis?

Ja — hele teksten til “AND, OR, XOR og shifts” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Forberedelse til kodeinterviews-kurset, skal du opgradere til CoddyKit PRO. Forberedelse til kodeinterviews-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “AND, OR, XOR og shifts”?

Læs og kombinér bits med sikkerhed Du øver dig i Forberedelse til kodeinterviews med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Forberedelse til kodeinterviews?

Der kræves ingen tidligere erfaring. Forberedelse til kodeinterviews på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “AND, OR, XOR og shifts”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Forberedelse til kodeinterviews-lektion?

Ja. Alle Forberedelse til kodeinterviews-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. AND, OR, XOR og shifts
  2. Sæt, nulstil og skift en bit
  3. Tæl bits og laveste satte bit
  4. Bitmasker som små sets
← Tilbage til Forberedelse til kodeinterviews