Размерность списков: от строки до многомерного массива
Размерность списков, строки и столбцы, индексация и пустые структуры на концептуальных примерах без привязки к конкретному языку.

Назначение
Размерность определяет, сколько индексов нужно, чтобы указать отдельный элемент данных. Одномерный список требует одного номера позиции, двумерная таблица — двух, трёхмерный массив — трёх. Понимание этой схемы помогает читать и строить структуры данных в любом языке программирования, не полагаясь на синтаксис конкретной среды.
Ниже размерность разбирается через простые примеры: список дней недели, таблица успеваемости и набор таких таблиц за несколько семестров. Каждый пример показывает, как логические оси соотносятся с конкретными позициями и как ведут себя пустые структуры.
Одномерный список
Одномерный список хранит элементы в линейном порядке: первый, второй, третий и так далее. Каждый элемент получает индекс, обычно начинающийся с нуля или с единицы в зависимости от языка. Например, список дней недели можно представить как семь позиций, где индекс 0 соответствует понедельнику, а индекс 6 — воскресенью. Доступ к элементу занимает одно обращение: достаточно назвать номер позиции.
Пустой одномерный список содержит ноль элементов. Он не хранит значений, но сам как объект существует и может быть заполнен позже. Разница между пустым списком и отсутствием списка состоит в том, что пустой список уже создан и занимает место в программе, тогда как отсутствующий список ещё не объявлен. При обходе пустого списка цикл не выполняет ни одной итерации, что иногда полезно как явная проверка: если список пуст, дальнейшая обработка не требуется.
Строка и столбец
Двумерная структура объединяет списки в таблицу. Первый индекс выбирает строку, второй — столбец внутри этой строки. Таблица успеваемости класса содержит строки по ученикам и столбцы по предметам. Чтобы узнать оценку ученика с номером 4 по математике, указываются оба индекса: строка 4, столбец, соответствующий математике.
Пустая строка в такой таблице означает, что для данного ученика оценки ещё не внесены, но сама строка существует и может быть заполнена позже. Пустая таблица целиком содержит ноль строк и ноль столбцов; обращение к любому индексу в ней не даст результата, потому что ни одна позиция не выделена. На практике перед обращением к двумерной структуре проверяют, что строка существует и что в ней есть нужный столбец.
Рабочий пример с явной конвенцией
Возьмём таблицу формы (2, 3): две строки и три столбца, всего шесть позиций. В этом примере используется нулевая индексация, при которой допустимые значения индексов строк лежат в диапазоне от 0 до 1, а столбцов — от 0 до 2. Позиция (1, 2) указывает на элемент второй строки и третьего столбца.
Таблица такой формы содержит ровно шесть ячеек, и каждая имеет единственный адрес из пары индексов. Если же строки не одинаковой длины, например первая содержит три значения, а вторая — одно, общая форма (2, 3) уже не описывает данные точно. Такие «неровные» списки строк допустимы в ряде конструкций, но тогда обращение по второму индексу требует отдельной проверки длины конкретной строки.
Пустые структуры и отсутствующие ссылки
Отсутствие списка не всегда означает пустой список. Пустой список существует как объект с нулём элементов; объявленная переменная-ссылка может не содержать никакого списка вовсе. В первом случае обход завершается сразу, во втором обращение к списку требует предварительной проверки, что объект действительно создан.
Таблица с нулём строк сохраняет метаданные о количестве столбцов, если такая форма объявлена заранее. Обращение к позиции (0, 0) в ней всё равно некорректно, потому что ни одна строка не выделена. Поведение при невалидном доступе зависит от конкретной реализации: одна среда выдаёт ошибку, другая возвращает специальное значение, третья завершает программу.
Ограничения обобщения
Логические оси не определяют, как данные хранятся в памяти. Прямолинейное расположение элементов, порядок строк перед столбцами и тип значений каждой ячейки — свойства конкретной реализации, а не самой размерности. Форма (2, 3) говорит лишь о шести позициях, доступных по двум индексам.
Трёхмерная структура формы (2, 3, 4) содержит 24 позиции, но для её описания нужны три индекса, а не два. Число индексов всегда равно числу осей, независимо от того, как именно массив организован внутри. Приведённые примеры иллюстрируют общие принципы и не описывают контракт какого-либо конкретного языка.