Studeren per vak
Code-interviews
Voor een code-interview leer je complexiteiten, datastructuren, algoritmepatronen en designvragen uit je hoofd. Lumi vraagt ze terug tot je ze kunt produceren zonder vast te lopen bij het whiteboard.

Hoe je dit vak omzet in kaarten
Maak één kaart per datastructuur met de kost van elke bewerking, en één kaart per algoritmepatroon, zoals two pointers of het sliding window, met het teken dat je het laat herkennen. Voor design één kaart per component, zoals de cache, de message queue of de load balancer, met zijn rol. De valkuil is honderd problemen oplossen zonder ooit de patronen vast te zetten, en struikelen over hetzelfde soort vraag. Met Lumi beschrijf je de oplossing uit je geheugen voor je ze ziet, en dat ophalen bouwt de reflex (Roediger en Karpicke, 2006). Kom meerdere dagen later terug naar een patroon, en zeg de complexiteit altijd hardop (Cepeda e.a., 2006).
Wat je uit je hoofd moet kennen
- Tijd- en ruimtecomplexiteit van gebruikelijke bewerkingen, Big O-notatie.
- Datastructuren, array, linked list, stack, queue, hashtabel, boom, graaf.
- Algoritmepatronen, two pointers, sliding window, recursie, dynamisch programmeren.
- Klassieke sorts en traversals, met hun kost.
- De bouwstenen van designvragen, cache, message queue, load balancer, database.
Hoe Lumi je helpt het te onthouden

Je leert je kaarten aan Lumi, complexiteiten, structuren, patronen, design. Het vergeet na verloop van tijd, net als jij, en overhoort je net voordat je zou vergeten. Naarmate het interview nadert, trekt de Mist over wat je minder goed kent, dynamisch programmeren of grafen bijvoorbeeld, en vraagt Lumi dat eerst. Je komt binnen en herkent het patroon meteen.
Voorbeeldkaarten
Drie kaarten zoals je ze zou schrijven, met het antwoord dat Lumi verwacht.
Wat is de complexiteit van binair zoeken?
O(log n) in een gesorteerde array.
Welke structuur werkt volgens last in, first out?
De stack.
Welk teken wijst op een sliding window?
Een vraag over een aaneengesloten subarray of substring om te optimaliseren.
Voorbeeldkaart
Probeer het, Lumi zet het om in invulvragen in je browser.
Code-interviews · leer deze kaart aan Lumi
Binair zoeken in een gesorteerde array kost O(log n) tijd. Een hashtabel geeft gemiddeld toegang in O(1) tijd. Een stack werkt volgens last in, first out. Een breadth first search van een graaf gebruikt een queue.
Lumi's vraag
Binair zoeken in een gesorteerde array kost O(_____) tijd.
Kies het ontbrekende woord


Antwoord goed om Lumi te laten oplichten
Zijn lampje dooft als een feit wegzakt.
Veelgestelde vragen
- Hoeveel problemen moet ik oplossen voor een interview?
- Het aantal is minder belangrijk dan wat je ervan onthoudt. Zet na elk probleem het patroon op een kaart en laat Lumi het terugvragen zodat het blijft.
- Hoe herhaal ik system design-vragen?
- Eén kaart per component met zijn rol en trade-offs. Lumi vraagt ze terug, en daarna zet je de antwoorden hardop in elkaar.
- Vervangt Lumi oefenen op een probleemplatform?
- Nee, de twee werken samen. Het platform geeft je de problemen, en Lumi zorgt dat je de complexiteiten en patronen die eruit voortkomen onthoudt.
Lees hierna
Bronnen
- Roediger, Karpicke (2006). Test-enhanced learning. Taking memory tests improves long-term retention. Psychological Science, 17(3). doi.org/10.1111/j.1467-9280.2006.01693.x
- Cepeda, Pashler, Vul, Wixted, Rohrer (2006). Distributed practice in verbal recall tasks. A review and quantitative synthesis. Psychological Bulletin, 132(3). doi.org/10.1037/0033-2909.132.3.354
Leer dit aan Lumi
Geef Lumi je code-interviews notities, hij geeft ze terug als vragen op het juiste moment.


