@storm-coder

Массив массивов и многомерный массив — это одно и то же?

Здравствуйте! Массив массивов и многомерный массив - это одно и то же? Если нет, в чем различия?
Спасибо
  • Вопрос задан
  • 171 просмотр
Решения вопроса 1
DexterHD
@DexterHD
Software Engineer, Teamlead, CTO
Понятие "Массив массивов" не совсем корректно. Если речь идет о PHP то многомерный массив, это массив, ключами которого являются числовые индексы а значениями другие массивы. Если ключами являются строки, это ассоциативный массив.

$firstArray = [[1,2,3], [4,5,6], [7,8,9]]; // Многомерный массив
echo $firstArray[1][2] // -> 6

$secondArray = ['one'=>['two'=>'three'], 'four'=>[10,11,12]];
echo $secondArray['four'][1] // -> 11


В других языках ассоциативные массивы реализованы по другому, но аналогами являются к пример `map` в Go, `dictionary` в python и др. В Wiki есть пара хороших статей на данную тему:

https://ru.wikipedia.org/wiki/Массив_(программирование)
https://ru.wikipedia.org/wiki/Ассоциативный_массив
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Одно и тоже.
Ответ написан
Комментировать
AlexMaxTM
@AlexMaxTM
По сути это синонимы. Но люди испльзующие тот или иной термин могут подразумевать немного разные вещи.
Чаще всего под многомерным массивом подразумевают
$arr[0][2] или даже $arr[3][2][1][0] - например для создания матриц.
В тоже время массив массивов подразумевает, что доступ к элементам может происходить не всегда по индексу, но и по ключу, например,
$arr['foo']['bar'].
Но по факту и то и другое это синонимы в php.
Ответ написан
Exploding
@Exploding
wtf?
Понятие "Массив массивов" также является синонимом Парадокса Рассела о теории множеств https://ru.m.wikipedia.org/wiki/Парадокс_Рассела
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы