Abstrakt datatype: Forskelle mellem versioner

Content deleted Content added
Interwiki tilføjet.
m →‎Definition: Tilføjet henvisning til mutabilitet
Linje 13:
 
=== Imperative definitioner ===
I imperative definitioner, som i større grad lægger sig op ad [[imperativ programmering|det imperative programmeringsparadigme]], betragtes datastrukturer som ''[[mutabilitet|mutérbare]]'', hvilket vil sige at den samme mængde data kan have forskellige tilstande på forskellige tidspunkter. Nogle operationer kan ændre på datastrukturens tilstand mens andre blot aflæser den. For at understrege denne pointe kan man sige at instruktionerne ''udføres'' eller ''anvendes'' på strukturen, snarere end at de blot ''evalueres''.
 
==== Abstrakte variable ====
Linje 23:
 
=== Funktionelle definitioner ===
En anden måde at definere abstrakte datatyper, som i større grad lægger sig op ad [[funktionel programmering|det funktionelle programmeringsparadigme]], er ved at betragte hver tilstand af sin abstrakte datastruktur som separate enheder, altså som ''[[mutabilitet|immutérbare]]''.
 
Her betragtes altså ikke instanser af data, men kun værdier som returneres af funktioner. Det funktionelle paradigme kan være nyttigt i beskrivelser af algoritmer som afhænger af rekursion, eller hvis man ønsker at bevise korrektheden af en algoritme ved [[induktion (matematik)|matematisk induktion]].