Skip to content
Teknik · Årskurs 9

Idéer för aktivt lärande

Grundläggande Datastrukturer

Aktiva upplevelser gör abstrakta datastrukturer konkreta för eleverna genom att knyta teorin till fysiska och digitala erfarenheter. När eleverna själva hanterar kort i en fysisk modell av en array eller spelar ett spel med tallrikar som en stack, skapas minnesvärda insikter om hur val av struktur påverkar prestanda och tillämpningar.

Skolverket KursplanerLgr22: Teknik - Åk 7-9 - Hur algoritmer kan skapas och användas vid programmering
25–40 minPar → Hela klassen4 aktiviteter

Aktivitet 01

Stationsundervisning30 min · Smågrupper

Fysisk Modell: Array vs Lista

Dela ut kort med data till små grupper. Låt eleverna arrangera korten som en array med fast antal platser och simulera insättning i en lista genom att lägga till eller ta bort i ändarna. Diskutera tid för åtkomst och förändringar. Avsluta med att notera fördelar och nackdelar.

Jämför fördelarna med att använda en array kontra en lista för att lagra data.

HandledningstipsUnder 'Fysisk Modell: Array vs Lista' ska eleverna arbeta i par med kort för att skapa en array och en lista, och sedan jämföra hur snabbt de kan lägga till eller ta bort element i ändarna.

Vad att leta efterVisa eleverna två kodavsnitt: ett som använder en array för att lagra en lista med namn och ett som använder en länkad lista. Be dem skriva ner vilken struktur de tror är mest effektiv om de ofta behöver lägga till namn i slutet av listan och varför.

MinnasFörståTillämpaAnalyseraSjälvregleringRelationsförmåga
Skapa en komplett lektion

Aktivitet 02

Stack-Spel: Tallriksutmaning

Använd plasttallrikar eller block för att bygga en stack. Elever lägger på och tar bort från toppen enligt LIFO-regeln, simulerar exempel som webbläsarhistorik. Grupper tävlar om att hantera flest operationer korrekt. Reflektera över användningsområden.

Förklara hur en stack fungerar och ge ett exempel på dess användning.

HandledningstipsI 'Stack-Spel: Tallriksutmaning' ska du som lärare observera om eleverna förstår LIFO-principen genom att lyssna på deras kommentarer när de inte kan ta en tallrik från mitten av högen.

Vad att leta efterStäll frågan: 'Tänk på en spelapp där du kan ångra ditt senaste drag. Vilken datastruktur skulle vara mest lämplig för att implementera ångra-funktionen, och hur skulle den fungera?' Låt eleverna diskutera i små grupper och presentera sina resonemang.

MinnasFörståTillämpaAnalyseraSjälvregleringRelationsförmåga
Skapa en komplett lektion

Aktivitet 03

Kodutmaning: Prestandatest

I par kodar elever enkla array- och listoperationer i Python eller Blocky. Testa tid för att söka och lägga till data i stora mängder. Jämför resultat grafiskt och diskutera varför en struktur är bättre för specifika uppgifter.

Analysera hur valet av datastruktur påverkar en algoritmens prestanda.

HandledningstipsFör 'Kodutmaning: Prestandatest' ska du uppmuntra eleverna att diskutera varför vissa tester tar längre tid och koppla det till datastrukturernas egenskaper.

Vad att leta efterGe varje elev ett kort med antingen 'Array' eller 'Länkad lista'. Be dem skriva en mening som beskriver en situation där deras tilldelade datastruktur är fördelaktig, och en mening om en situation där den är mindre fördelaktig.

MinnasFörståTillämpaAnalyseraSjälvregleringRelationsförmåga
Skapa en komplett lektion

Aktivitet 04

Stationsundervisning35 min · Smågrupper

Gruppdiskussion: Val av Struktur

Presentera scenarier som lagring av poäng i ett spel. Grupper väljer och motiverar datastruktur, ritar diagram och presenterar för klassen. Rota roller för att alla bidrar.

Jämför fördelarna med att använda en array kontra en lista för att lagra data.

HandledningstipsUnder 'Gruppdiskussion: Val av Struktur' ska du se till att alla grupper får presentera sin slutsats, så att missuppfattningar kan rättas direkt.

Vad att leta efterVisa eleverna två kodavsnitt: ett som använder en array för att lagra en lista med namn och ett som använder en länkad lista. Be dem skriva ner vilken struktur de tror är mest effektiv om de ofta behöver lägga till namn i slutet av listan och varför.

MinnasFörståTillämpaAnalyseraSjälvregleringRelationsförmåga
Skapa en komplett lektion

Mallar

Mallar som passar dessa aktiviteter i Teknik

Använd, redigera, skriv ut eller dela.

Några anteckningar om att undervisa detta avsnitt

Börja med att visa eleverna vardagliga exempel på datastrukturer, som en hylla för arrayer och en kö för listor, för att skapa en känslomässig koppling. Undvik att förklara alla detaljer om tidskomplexitet på en gång. Låt eleverna upptäcka dessa begrepp genom egna aktiviteter och diskussioner, eftersom forskning visar att elever lär sig bättre när de upplever problemen själva snarare än att lyssna på en genomgång.

Efter aktiviteterna ska eleverna kunna förklara skillnaden mellan arrayer, listor och staplar både muntligt och skriftligt, samt motivera val av struktur för specifika problem. De ska också kunna identifiera tidskomplexitetsaspekter och relatera dem till verkliga användningsområden.


Se upp för dessa missuppfattningar

  • Under 'Fysisk Modell: Array vs Lista', watch for elever som tror att arrayer och listor fungerar likadant när de hanterar korten.

    Be eleverna att räkna hur många kort de kan lägga till i ändarna av listan utan att flytta om, och jämför det med arrayens fasta storlek. Diskutera sedan varför arrayer är snabbare för slumpmässig åtkomst men kräver mer planering.

  • Under 'Stack-Spel: Tallriksutmaning', watch for elever som försöker ta en tallrik från mitten av högen.

    Avbryt spelet och fråga gruppen varför det inte gick, och koppla det till att staplar bara tillåter åtkomst i ändarna. Jämför med en lista där åtkomst var som helst är möjlig.

  • Under 'Kodutmaning: Prestandatest', watch for elever som tror att alla operationer tar lika lång tid oavsett datastruktur.

    Be eleverna att titta på tiderna för insättning och åtkomst i sina tester. Fråga dem varför vissa tester tar längre tid och koppla det till O(1) och O(n) komplexitet.


Metoder som används i denna översikt