Структура даних - це

Структура даних - це

Бінарне дерево. простий приклад ветвящейся зв'язковою структури даних.

Структура даних (англ. Data structure) - програмна одиниця, що дозволяє зберігати і обробляти безліч однотипних і / або логічно пов'язаних даних в обчислювальній техніці. Для додавання, пошуку, зміни і видалення даних структура даних надає певний набір функцій, з яких складається інтерфейс.

Термін «структура даних» може мати кілька близьких, але тим не менше різних значень [1]:

  • Абстрактний тип даних;
  • Реалізація будь-якого абстрактного типу даних;
  • Примірник типу даних, наприклад, конкретний список;
  • В контексті функціонального програмування - унікальна одиниця (англ. Unique identity), зберігається при змінах. Про неї неформально говорять як про одну структуру даних, незважаючи на можливу наявність різних версій.

Структури даних формуються за допомогою типів даних. посилань і операцій над ними в обраною мовою програмування.

При розробці програмного забезпечення складність реалізації і якість роботи програм істотно залежить від правильного вибору структур даних. Це розуміння дало початок формальним методам розробки та мов програмування. в яких саме структури даних, а не алгоритми, є наріжним архітектури програмного засобу. Велика частина таких мов володіє певним типом модульності. що дозволяє структурам даних безпечно перевикористати в різних додатках. Об'єктно-орієнтовані мови. такі як Java. C # і C ++. є прикладами такого підходу.

Багато класичні структури даних представлені в стандартних бібліотеках мов програмування або безпосередньо вбудовані в мови програмування. Наприклад, структура даних хеш-таблиця вбудована в мови програмування Lua. Perl. Python. Ruby. Tcl і ін. Широко використовується стандартна бібліотека шаблонів (STL) мови C ++.

Фундаментальними будівельними блоками для більшої частини структур даних є масиви. записи (struct в Сі і record в Паскалі), розмічені об'єднання (union в Сі) і посилання. Наприклад, двусвязний список може бути побудований за допомогою записів і посилань, де кожен запис (вузол) буде зберігати дані і посилання на «лівий» і «правий» вузли.

Порівняння структур даних у функціональному і імперативний програмуванні

Проектувати структури даних для функціональних мов складніше, ніж для імперативних, як мінімум з двох причин [1]:

  1. Майже всі структури даних інтенсивно використовують присвоювання. яке в чисто функціональному стилі не використовується;
  2. Функціональні структури даних є більш гнучкими, і тому там, де в імперативний програмуванні стара версія втрачається, просто замінюючись нової, в функціональному вона автоматично продовжує існувати. Іншими словами, в імперативному програмуванні (а то й прийняти спеціальних заходів, що можуть серйозно ускладнити програму) структури даних є ефемерними (англ. Ephemeral), а в функціональних програмах вони як правило постійні (англ. Persistent).

Примітки

література

Дивитися що таке "Структура даних" в інших словниках:

Структура даних - організаційна схема запису або масиву, відповідно до якої впорядковані дані, з тим щоб їх можна було інтерпретувати і виконувати над ними певні операції. За англійськи: Data structure Див. Також: Структури даних Дані ... ... Фінансовий словник

Структура даних для непересічних множин - Значимість предмета статті поставлена ​​під сумнів. Будь ласка, покажіть в статті значимість її предмета, додавши в неї докази значущості за частковими критеріями значущості або, в разі якщо приватні критерії значимості для ... ... Вікіпедія

Дерево (структура даних) - Цей термін має також інші значення див. Дерево (значення). Простий приклад невпорядкованого дерева Дерево одна з найбільш широко поширених структур ... Вікіпедія

Проста структура даних - (англ. Plain old data, POD) в сучасних мовах програмування високого рівня тип даних, який має жорстко певний розташування полів в пам'яті, який не потребує обмеження доступу та автоматичного управління. Змінні такого ... ... Вікіпедія

Об'єднання (структура даних) - Цю статтю слід вікіфіціровать. Будь ласка, оформіть її згідно з правилами оформлення статей. Цей термін має також інші значення див. Об'єднання. Об'єднання (... Вікіпедія

Двійкове дерево (структура даних) - бінарне дерево структура даних, що є програмною реалізацією двійкового дерева (графа). Двійкове дерево складається з вузлів (вершин) записів виду (data, left, right), де data деякі дані прив'язані до вузла, left, right посилання на вузли, ... ... Вікіпедія

ієрархічна структура даних - Структура даних, що представляє собою безліч, частково впорядкована таким чином, що існує тільки один елемент цієї множини, що не має попереднього, а всі інші елементи мають тільки один попередній (ДСТУ 2874). [Домарев В.В. ... ... Довідник технічного перекладача

  • Купа (структура даних). Джессі Рассел. Ця книга буде виготовлена ​​в відповідності з Вашим замовленням за технологією Print-on-Demand. High Quality Content by WIKIPEDIA articles! У комп'ютерних науках ку? Ча - це спеціалізована ... Детальніше Купити за 1125 руб
  • Дерево (структура даних). Джессі Рассел. Ця книга буде виготовлена ​​в відповідності з Вашим замовленням за технологією Print-on-Demand. High Quality Content by WIKIPEDIA articles! Дерево - одна з найбільш широко поширених ... Детальніше Купити за 998 руб
  • Структура і функції антитіл. У книзі дано вичерпне виклад сучасних даних про структуру та функції імуноглобулінів, їх антигензв'язуючих центрах, специфічності і біологічної ролі взаємодії антитіла з ... Детальніше Купити за 540 руб
Інші книги по запросу «Структура даних» >>