O structură de date matrice este o metodă de stocare a unor tipuri de date similare într-o secvență liniară. Această secvență liniară permite acces foarte rapid și eficient la orice parte a matricei. Fiecare parte de date dintr-o matrice este situată într-o poziție numerotată numit index.Datele efective aflate la un anumit index se numesc element.Matricele sunt utilizate pe scară largă în majoritatea limbajelor de programare pentru calculatoare și sunt baza pentru multe alte tipuri de structuri de date.
Una dintre caracteristicile principale ale unei structuri de date matrice este modul în care este stocată în memorie. În cele mai multe cazuri, matricele sunt stocate într-o secvență liniară. Alte structuri de date, cum ar fi listele legate, poate avea fiecare element stocat în orice punct aleatoriu din memorie împrăștiat în întreaga zonă a spațiului disponibil.O matrice este stocată în secvență, astfel încât o serie de operații eficiente pot fi efectuate pentru a găsi rapid adresa unui index în memorie și preluați datele de acolo.
Există diferite moduri de a declara o structură de date matrice. Cea mai simplă formă este o matrice unidimensională, care începe la indicele zero și poate avea atât de mulți indici cât este necesar. O matrice bidimensională are doi indici atunci când sunt referiți, similar cu lățimea și înălțimea utilizate pentru a asambla coordonatele pe o grilă. Matricele multidimensionale pot avea trei sau mai mulți indici în matrice. Deși matricea este accesată cu mai mult de o referință de index, datele sunt încă stocate liniar în memorie.
Matricele sunt diferite de alte structuri de date, cum ar fi listele legate. O listă legată este o structură dinamică care poate crește și micșora pe măsură ce programul rulează. În cea mai mare parte, matricele sunt statice și dimensiunea lor nu poate fi schimbat în timpul execuției. Aceasta înseamnă că o matrice limitează cantitatea de elemente care pot fi stocate în timpul execuției. Dimpotrivă, o matrice permite acces complet aleatoriu la elementele pe care le conține, spre deosebire de o listă legată. care trebuie parcurs în succesiune pentru a ajunge la elementele din mijloc și sfârșit.
Viteza unei structuri de date matrice o face perfect potrivită pentru utilizarea în alte tipuri de date mai complexe, cum ar fi tabelele hash.Previzibilitatea adreselor de memorie ale elementelor poate fi, de asemenea, utilizată pentru a implementa algoritmi de îmbinare a matricei foarte rapidi. care poate muta datele rapid. Acest lucru este util în special pentru operațiuni de sortare, cum ar fi sortările cu bule, care sunt perfect potrivite pentru utilizarea cu matrice.