Förberedelse inför kodningsintervjuer · Lektion

AND, OR, XOR och skiftningar

Läs och kombinera bitar med säkerhet

Lektion 1 av 413 steg

AND, OR, XOR och skiftningar är en gratis lektion i Förberedelse inför kodningsintervjuer på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Förberedelse inför kodningsintervjuer, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Förberedelse inför kodningsintervjuer innehåller totalt 4 lektioner.

Bitar är Ditt verktyg

Varje heltal är egentligen en rad med bitar, bara 0:or och 1:or. När Du lär Dig att läsa och kombinera dem får Du snabba och smarta knep i tävlingsprogrammering. 🔧

Se det binära

Använd Pythons bin() för att titta på bitarna i vilket tal som helst. Prefixet 0b markerar bara att talet är binärt; resten är bitmönstret.

print(bin(13))  # 0b1101

AND behåller gemensamma bitar

AND-operatorn (&) ger 1 endast där båda talen har 1. Den passar perfekt för att kontrollera eller maskera gemensamma bitar.

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

OR kombinerar bitar

OR-operatorn (|) ger 1 överallt där något av talen har 1. Använd den för att slå på flaggor utan att påverka resten.

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

XOR hittar skillnader

XOR-operatorn (^) ger 1 där de två bitarna skiljer sig åt. Den är en favorit i tävlingsprogrammering för att växla bitar och hitta den udda biten.

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

XOR tar ut sig självt

Ett tal XOR:at med sig självt blir alltid 0, och XOR med 0 lämnar talet oförändrat. Denna egenskap där allt tar ut sig driver många XOR-problem.

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

Hitta det unika talet

Om varje värde förekommer två gånger utom ett, XOR:ar Du ihop alla värden så försvinner paren. Det som blir kvar är det unika värdet.

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

Vänsterskift multiplicerar

Ett vänsterskift flyttar bitarna uppåt och lägger till nollor till höger. Varje skift med ett steg fördubblar värdet, som vid multiplikation med en tvåpotens.

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

Högerskift dividerar

Ett högerskift tar bort bitar från högerkanten. Varje skift med ett steg halverar värdet och utför heltalsdivision med en tvåpotens.

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

Skapa en tvåpotens

Genom att skifta 1 åt vänster med k positioner skapar Du direkt värdet 2 upphöjt till k. Det är det renaste sättet att skapa masker med en enda bit.

print(1 << 5)  # 32

Hastighet spelar roll i tävlingsprogrammering

Bitvisa operatorer körs i ett enda snabbt steg, så att ersätta aritmetik med skift kan rädda en lösning som ligger nära tidsgränsen. Lär Dig dem ordentligt. ⚡

Snabb kontroll

Dags att testa Dina bitoperatorer.

Sammanfattning: bitoperatorer

Du har mött AND, OR, XOR och skiftoperatorer: kombinera, växla och skala bitar i ett enda snabbt steg. Det här är byggstenarna för alla kommande bittrick. 🎉

Gratis att börja

Lär dig Förberedelse inför kodningsintervjuer med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
90
Lektioner
360

Vanliga frågor

Är lektionen ”AND, OR, XOR och skiftningar” gratis?

Ja – hela texten till ”AND, OR, XOR och skiftningar” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Förberedelse inför kodningsintervjuer, kan Ni uppgradera till CoddyKit PRO. Kursen i Förberedelse inför kodningsintervjuer innehåller totalt 4 lektioner.

Vad lär jag mig i ”AND, OR, XOR och skiftningar”?

Läs och kombinera bitar med säkerhet Ni övar på Förberedelse inför kodningsintervjuer med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Förberedelse inför kodningsintervjuer?

Du behöver inga förkunskaper. Utbildningen i Förberedelse inför kodningsintervjuer på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”AND, OR, XOR och skiftningar”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Förberedelse inför kodningsintervjuer-lektionen?

Ja. Varje Förberedelse inför kodningsintervjuer-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. AND, OR, XOR och skiftningar
  2. Sätt, rensa och växla en bit
  3. Räkna bitar och lägsta satta bit
  4. Bitmasker som små mängder
← Tillbaka till Förberedelse inför kodningsintervjuer