Array
Uit Wikipedia, de vrije encyclopedie
Een array (Engels voor rij of reeks) is een datastructuur die bij het programmeren van computers een lijst van gegevens van hetzelfde type aanduidt. De array bestaat uit een naam (identifier) en een index van integers waarmee waarden in de array kunnen worden bekeken en/of gewijzigd.
Voorbeeld van een array van integers in de programmeertaal C:
int array[2]; // Een array met 3 integers (geen van de elementen hebben (nog) een waarde) array[0] = 1; // Geeft het allereerste element in de array waarde 1 array[1] = 3; // Geeft het tweede element in de array waarde 3
Hierbij is de naam van de array "array" en de opgeslagen waarden in de array zijn 1 en 3. Deze waarden zijn nu te gebruiken met behulp van array[0] en array[1]. In sommige programmeertalen (bijvoorbeeld C of PHP) is 0 de index van de eerste waarde in de array, in andere programmeertalen is dit 1. Er zijn ook talen waar men zelf de ondergrens kan bepalen.
Hoewel de array een zeer eenvoudige datastructuur is, kunnen er zeer krachtige dingen mee gedaan worden, bijvoorbeeld vectoren in een meerdimensionale ruimte kunnen met een eenvoudige array worden geïmplementeerd, of in een taal als Perl kunnen bijvoorbeeld arrays van references naar hashes (associatieve arrays) worden gemaakt.
De simpelste implementatie van arrays is een reeks achtereenvolgende geheugencellen; dit is hoe de arrays in C zijn geïmplementeerd. In andere programmeertalen kunnen arrays geïmplementeerd zijn als lijsten.
[bewerk] Meer-dimensionele arrays
Het hierboven genoemde voorbeeld is een 1-dimensionale array (ook wel vector of scalair genoemd). In veel programmeertalen is het ook mogelijk om meer-dimensionale arrays te gebruiken. Een twee-dimensionale array wordt ook wel een matrix genoemd.
Er bestaan verschillende manieren om een multidimensionale array te representeren in een computergeheugen. Eén mogelijkheid is om een array te maken met pointers naar andere arrays (zie afbeelding). Als we een tweedimensionale array beschouwen als een tabel met rijen en kolommen, dan zijn de rijen afzonderlijke arrays. Een voordeel hiervan is dat de rijen niet allemaal even lang hoeven te zijn; de lengte kan zelfs dynamisch aangepast worden.
Een andere mogelijkheid is om de rijen achter elkaar op te slaan als elementen in een eendimensionale array. Een tweedimensionale array met m rijen en n kolommen wordt dan een eendimensionale van grootte m×n. De eerste rij is dan opgeslagen in elementen 1 tot n, de tweede in elementen n tot 2n, enz. Het voordeel van deze representatie is snelheid: alle elementen staan bij elkaar in het geheugen, er hoeven geen pointers gevolgd te worden naar andere delen van het geheugen.
In beide gevallen is de uitbreiding naar drie- en meer-dimensionale arrays mogelijk door een array van tweedimensionale arrays te maken, enz.

