O matrice bidimensională este un tip foarte comun de structură de date și este utilizat într-o formă sau alta de aproape toate limbajele de programare pentru computer. Într-o astfel de matrice, elementele de date de același tip sunt aranjate într-un format care este de obicei descris ca un tabel cu rânduri și coloane. Tehnicile specifice utilizate pentru a localiza elementele de date în memorie variază de la limbă la limbă și de la caz la caz, dar cele mai eficiente varietăți permit utilizarea calculelor matematice simple pentru a localiza adresa de memorie specifică a oricărui element de matrice dat. Matricele sunt atât de comune încât multe limbi includ matricea ca tip de date de bază.
Matricele sunt unele dintre cele mai comune structuri de date utilizate de programatorii de computere. O matrice este definită ca o serie de elemente de date care pot fi identificate în mod unic printr-un anumit număr de indici. Este o practică obișnuită să se facă referire la o matrice ca având un număr de dimensiuni egal cu numărul de elemente de index necesare pentru a localiza un anumit element de date. Într-o matrice unidimensională, care este în esență o listă, fiecare element de date poate fi localizat prin referirea la poziția sa în listă. O matrice bidimensională folosește doi indici pentru a identifica fiecare element de date și poate fi vizualizată ca un tabel cu rânduri și coloane.
Fiecare element de date dintr-o matrice bidimensională standard constă din același tip de obiect. Elementele de matrice sunt cel mai adesea variabile simple, cum ar fi float sau numere întregi. În principiu, totuși, orice tip de informație poate fi stocat într-o matrice, atâta timp cât fiecare articol este același. O matrice bidimensională este o alegere naturală pentru stocarea oricăror date care ar fi în mod natural plasate într-un tabel, iar acest tip de date este foarte des folosit pentru a face exact asta.
În mod ideal, o întreagă matrice bidimensională poate fi localizată într-un singur bloc continuu de memorie. Acest lucru permite un acces foarte rapid, deoarece adresa de memorie specifică a fiecărui element de date individual dintr-o matrice bidimensională poate fi calculată matematic, folosind o formulă bazată pe dimensiunea necesară pentru fiecare element de date. În practică, acest lucru nu este întotdeauna posibil, iar matricele pot fi stocate în diferite porțiuni de memorie, proces care reduce viteza cu care elementele pot fi accesate.
Cea mai de bază varietate de matrice bidimensionale are o dimensiune fixă și utilizează valori întregi pentru indici. Multe limbi permit utilizarea numai numerelor întregi pentru valorile indexului, deși este adesea posibil să se construiască tipuri de date personalizate pentru a evita această limitare dacă este necesar. Alte varietati de matrice bidimensionale sunt optimizate pentru scopuri specifice, cum ar fi stocarea matricelor de celule în mare parte goale sau activarea redimensionării dinamice.