Co to jest tablica tablic?

Tablica tablic w programowaniu komputerowym to struktura danych, która przechowuje inną tablicę przy każdym indeksie. Oznacza to, że dane pod każdym adresem sekwencyjnym w tablicy najwyższego poziomu są w rzeczywistości pierwszym elementem danych każdej podtablicy. Z kolei każda podtablica może być również tablicą tablic, umożliwiając zagnieżdżanie tablic tak głęboko, jak to konieczne. Chociaż koncepcja może wydawać się złożona, w rzeczywistości istnieją bardzo proste deklaracje i notacje dereferencyjne, które pozwalają na bardzo wyraźne wyrażenie tablicy tablic wewnątrz programu. Jednym z najczęstszych zastosowań tablicy tablic jest przechowywanie informacji we wzorze siatki, tak jak w przypadku obrazu.

Tablica to seria elementów danych, które w większości języków programowania są przechowywane w kolejnych lokalizacjach pamięci. Dane przechowywane w tablicy nazywa się elementem, a każdy element zajmuje pozycję w tablicy zwanej indeksem. Początek tablicy to indeks zero, następny to indeks jeden i tak dalej. Zamiast przechowywać liczby całkowite lub znaki, tablica tablic zawiera inną kompletną tablicę pod każdym indeksem. Te podtablice w każdym indeksie mogą również zawierać tablice, zapewniając w razie potrzeby możliwość tworzenia złożonych, podobnych do drzewa struktur danych.

Jednym z typowych zastosowań tablicy tablic jest przechowywanie informacji, które mogą być indeksowane z siatki ze współrzędnymi kolumn i wierszy. Może to służyć do przedstawiania danych w arkuszu kalkulacyjnym, dwuwymiarowego (2D) obrazu wyświetlanego na ekranie, a nawet szachownicy. Tablice tablic o głębokości trzech poziomów, co oznacza tablicę zawierającą tablice zawierające tablice trzeciego poziomu, mogą być używane do reprezentowania informacji w kostce lub mogą być używane do reprezentowania macierzy informacji, w której każda lokalizacja ma więcej niż jedną atrybut. Ogólnie rzecz biorąc, tablice tablic, które są głębsze niż trzy poziomy, nie są używane, ponieważ ta sama funkcjonalność może być łatwiej zaimplementowana przy użyciu tablicy struktur lub klas.

Notacja programistyczna dla tablicy tablic jest znacznie łatwiejsza do rozszyfrowania niż można by się spodziewać. Większość języków programowania używa nawiasów do oznaczenia indeksu tablicy, a tablica wielowymiarowa niczym się nie różni, z wyjątkiem tego, że dodawany jest dodatkowy zestaw nawiasów w celu indeksowania podtablicy. Na przykład tablica jednowymiarowa może być zapisana jako „array[ 2 ]” w celu oznaczenia elementu w drugiej lokalizacji indeksu tablicy. Tablicę tablic można zapisać w podobny sposób — array[ 2 ][ 1 ] — która wskazuje element odniesienia w pierwszym indeksie drugiej tablicy.