Структура данных: различия между версиями

[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
м →‎См. также: -дубль
стилевые правки, пунктуация, ещё чистка "см. также"
Строка 6:
Различные виды структур данных подходят для различных приложений; некоторые из них имеют узкую специализацию для определённых задач. Например, [[B-дерево|B-деревья]] обычно подходят для создания [[база данных|баз данных]], в то время как [[Хеш-таблица|хеш-таблицы]] используются повсеместно для создания различного рода словарей, например, для отображения доменных имён в [[IP-адрес|интернет-адреса компьютеров]].
 
При разработке программного обеспечения сложность реализации и качество работы программ существенно зависит от правильного выбора структур данных. Это понимание дало начало формальным методам разработки и [[язык программирования|языкам программирования]], в которых именно структуры данных, а не алгоритмы, ставятся во главу архитектуры программного средства. Большая часть таких языков обладает определённым типом [[Модульность (программирование)|модульности]], позволяющим структурам данных безопасно [[повторное использование кода|переиспользоваться]] в различных приложениях. [[Объектно-ориентированноеориентированный программированиеязык программирования|Объектно-ориентированные]] языки]], такие как [[Java]], [[C Sharp|C#]] и [[C++]], являются примерами такого подхода.
 
Многие классические структуры данных представлены в стандартных библиотеках языков программирования или непосредственно встроены в языки программирования. Например, структура данных хэш-таблица встроена в языки программирования [[Lua]], [[Perl]], [[Python]], [[Ruby]], [[Tcl]] и др. Широко используется [[Стандартная библиотека шаблонов|стандартная библиотека шаблонов]] (STL]]) языка C++.
 
Фундаментальными строительными блоками для большей части структур данных являются [[массив]]ы, [[запись (языки программирования)|записи]] (см. конструкцию <code>struct</code> в языке [[Си (язык программирования)|Си]] и конструкцию <code>record</code> в языке [[Паскаль (язык программирования)|ПаскальПаскале]]), [[размеченное объединение|размеченные объединения]] (см. конструкцию <code>union</code> в языке [[Си (язык программирования)|Си]]) и [[Ссылка (программирование)|ссылки]]. Например, структура данных [[двусвязный список]], может быть построенапостроен с помощью записей и зануляемых ссылок, а именно,где каждая запись (узел) будет предоставлятьхранить блокданные данных (узел, node), содержащийи ссылки на «левый» и «правый» узлы, а также сами хранимые данные.
 
== См. также ==
* [[Стандартная библиотека шаблонов]]
* [[Абстрактный тип данных]]
 
== Литература ==