Tablica (ang. array) to uporządkowana kolekcja wartości przechowywanych pod kolejnymi indeksami, dostępna pod jedną nazwą zmiennej. Zamiast trzymać sto liczb w stu osobnych zmiennych, wrzucasz je do jednej tablicy i sięgasz po konkretny element przez jego pozycję. W większości języków indeksowanie zaczyna się od zera, więc pierwszy element ma indeks 0, a nie 1 (to klasyczna pułapka na początkujących).
Pod maską klasyczna tablica to ciągły kawałek pamięci, w którym elementy leżą obok siebie. Dzięki temu dostęp do dowolnego elementu po indeksie jest błyskawiczny i ma stały koszt, niezależnie od tego, czy sięgasz po pierwszy, czy po milionowy. Komputer po prostu liczy: adres początku plus indeks razy rozmiar elementu. To dlatego tablice są tak szybkie w odczycie i tak chętnie używane jako fundament innych struktur danych.
Do czego się przydaje
Tablicy używasz wszędzie tam, gdzie masz wiele danych tego samego typu, które chcesz traktować jako całość: lista użytkowników, piksele obrazka, kolejne pomiary z czujnika, znaki w tekście. Idealnie współgra z pętlą, bo możesz przejść po wszystkich elementach po kolei, posortować je, przefiltrować albo zsumować.
Przykład w JavaScript: tworzysz tablicę dni tygodnia i sięgasz po konkretny element.
const dni = ["pon", "wt", "śr", "czw", "pt"];dni[0]zwróci"pon", adni.lengthda5dni.push("sob")dorzuci element na koniec
W Pythonie odpowiednikiem jest list (dni = ["pon", "wt"]), w Javie czy C masz tablice o sztywnym, z góry ustalonym rozmiarze. To rozróżnienie ma znaczenie: tablica o stałej długości jest szybka, ale nie urośnie sama, a struktury typu ArrayList czy list potrafią się rozszerzać kosztem trochę większego narzutu.
Na co uważać
Najczęstszy błąd to wyjście poza zakres, czyli sięganie po indeks, którego nie ma. W tablicy pięcioelementowej ostatni poprawny indeks to 4; odwołanie do 5 kończy się błędem (np. IndexError w Pythonie) albo, w językach niskopoziomowych, odczytem śmieci z pamięci. Drugi klasyk to mylenie długości z ostatnim indeksem oraz zakładanie, że tablica numerowana jest od jedynki. Pamiętaj też, że w klasycznych tablicach o stałym rozmiarze wstawianie elementu w środek bywa kosztowne, bo trzeba przesunąć resztę elementów.
Pojęcia powiązane: indeks, pętla, lista, tablica wielowymiarowa, struktura danych, lista wiązana, słownik (mapa) oraz kolekcja.