Ассоциативный массив

Ассоциативный массив (словарь) — структура данных, массив, идентификаторами элементов которого являются не только целые числа, но и данные других типов (обычно строки). Идентификаторы обычно называются ключами. В отличие от индексного массива отсутствует строгая упорядоченность элементов. Обычные массивы могут рассматриваться как частный случай словаря, где ключ — это целое число

Поддержка ассоциативных массивов есть во многих интерпретируемых языках программирования высокого уровня (Perl, PHP, Ruby и др.). В языке C++ поддержка ассоциативных массивов включена в стандартную библиотеку (контейнер map).

Содержание

Достоинства

  • наглядность, удобство для человека, возможность присвоить каждому элементу осмысленный идентификатор
  • лёгкость добавления или удаления элементов, так как в общем случае не требуется изменения позиций других

Недостатки

  • дополнительный расход памяти на идентификаторы (даже если они хранятся в виде хеша)
  • сложность поиска элемента по ключу
  • сложность создания оптимизированных компиляторов для языка, в котором существует понятие ассоциативного массива

Пример

Python

 d1 = dict( a=10, b=20 )
 d2 = {'a':10, 'b':20 }
 d1[100] = 123
 d2['c'] = 321

Здесь были показаны два способа создания словаря, а также продемонстрирован тот факт, что ключом может быть объект любого типа. Добавление нового объекта в словарь-хранилище не требует в динамических языках (которым является и Python) никаких предварительных действий: если под таким ключом ничто не хранилось — теперь будет, если же хранилось — оно будет перезаписано. (Подробнее см. Python Tutorial, Dictionaries)

На Python весьма просто можно написать свой класс, который будет вести себя подобно словарю. Для этого необходимо лишь определить в своем классе соответствующие методы (см. Python Reference Manual, Emulating container types). Для расширения базовых свойств типа словарь, необходимо наследовать свой класс от соответствующего типа словаря (types.DictType)

 

Видео:

RADDAX.RU PHP от Евгения Попова,1 13 Ассоциативный массив
Решена проблема с сортировкой уроков!!! Все уроки данного канала, выложены и очень удобно сортированы на сайте http://raddax.ru --- На сайте также присутству...
Beginner JavaScript Tutorial - 35 - Associative Arrays
Visit my website at https://www.thenewboston.com/ for all of my videos and tutorials! Have questions or looking for source code? Check out the forum at https...
PHP Tutorial - 11 - Associative Arrays
Visit my website at https://www.thenewboston.com/ for all of my videos and tutorials! Have questions or looking for source code? Check out the forum at https...
Ассоциативные массивы [PHP - Урок 14]
ВИДЕО-УРОКИ PHP: Всё, что нужно знать о PHP. Самостоятельное обучение от простого к сложному. PHP - это мощный инструмент для создания сайтов любой сложности.
Beginner PHP Tutorial - 39 - Associative Arrays
Visit my website at https://www.thenewboston.com/ for all of my videos and tutorials! Have questions or looking for source code? Check out the forum at https...
Associative Array Introduction
This is an introduction slideshow lecture explaining associative arrays.
PHP Programming - Associative Arrays
I talk about accessing and setting data elements in an associative array, sorting arrays while maintaining associativity, getting a list of keys and values f...
AutoCAD LT 2012: Associative Array
In AutoCAD LT 2012, the Array command has received a major upgrade. Download a free 30-day trial at http://www.autodesk.com/autocadlt-trial.
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home