Реферат: Структуры Данных и Абстракции Данных

Реферат: Структуры Данных и Абстракции Данных




👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Хотя термины тип данных
(или просто тип
) , структура данных
и абстрактный тип данных
звучат похоже, но имеют они различный смысл. В языках программирования тип данных
переменной обозначает множество значений, которые может принимать эта переменная. Например, переменная булевого (логического) типа может принимать только два значения: значение true (истина) и значение false (ложь) и никакие другие. Набор базовых типов данных отличается в разных языках: в языке Pascal это типы целых (integer) и действительных (real) чисел, булев (boolean) тип и символьный (char) тип. Правила конструирования составных типов данных (на основе базовых типов) также различаются в разных языках программирования: Pascal легко и быстро строит такие типы.
Абстрактный тип данных (АТД) – это математическая модель плюс различные операторы, определённые в рамках этой модели. Мы можем разрабатывать алгоритм в терминах АТД, но для реализации алгоритма в конкретном языке программирования необходимо найти способ представления АТД в терминах типов данных и операторов, поддерживаемых данным языком программирования. Для представления АТД используются структуры данных
, которые представляют собой набор переменных, возможно, различных типов данных, объединённых определённым образом.
Базовым строительным блоком структуры данных является ячейка
, которая предназначена для хранения значения определённого базового или составного типа данных. Структуры данных создаются путём задания имён совокупностям (агрегатам) ячеек и (необязательно) интерпретации значения некоторых ячеек как представителей (т.е. указателей) других ячеек.
В качестве простейшего механизма агрегирования ячеек в Pascal и большинстве других языков программирования можно применять (одномерный) массив, т.е. последовательность ячеек определённого типа. Массив также можно рассматривать как отображение множества индексов (таких как целые числа 1, 2, …, n) в множество ячеек. Ссылка на ячейку обычно состоит из имени массива и значения из множества индексов данного массива. В Pascal множество индексов может быть нечислового типа, например (север, восток, юг, запад), или интервального типа как (1..10).Значения всех ячеек массива должны иметь одинаковый тип данных. Объявление
Имя
: array
[ТипИндекса] of
ТипЯчеек;
задаёт имя
для последовательности ячеек, тип для элементов множества индексов и тип содержимого ячеек.
Кстати, Pascal необычайно богат на типы индексов. Многие языки программирования позволяют использовать в качестве индексов только множества последовательных целых чисел. Например, чтобы в языке Fortran в качестве индексов массива можно было использовать буквы, надо всё равно использовать целые индексы, заменяя «А» на 1, «В» на 2, и т.д.
Другим общим механизмом агрегирования ячеек в языке программирования является структура записи
. Запись
(record) можно рассматривать как ячейку, состоящую из нескольких других ячеек (называемых полями
), значения в которых могут быть разных типов. Записи часто группируются в массивы; тип данных определяется совокупностью типов полей записи. Например, в Pascal объявление
задаёт имя reclist
(список записей) 4-элементного массива, значениями которого являются записи с двумя полями: data
(данные) и next
(следующий).
Третий метод агрегирования ячеек, который можно найти в Pascal и некоторых других языках программирования, - это файл
. Файл, как и одномерный массив, является последовательностью значений определённого типа. Однако файл не имеет индексов: его элементы доступны только в том порядке, в каком они были записаны в файл. В отличие от файла, массивы и записи являются структурами с «произвольным доступом», подразумевая под этим, что время доступа к компонентам массива и записи не зависит от значения индекса массива или указателя поля записи. Достоинство агрегирования с помощью файла (частично компенсирующее описанный недостаток) заключается в том, что файл не имеет ограничения на количество составляющих его элементов и это количество может изменяться во время выполнения программы.
В дополнение к средствам агрегирования ячеек в языках программирования можно использовать указатели и курсоры. Указатель
(pointer) – это ячейка, чьё значение указывает на другую ячейку. При графическом представлении структуры данных в виде схемы тот факт, что ячейка А является указателем на ячейку В, показывается с помощью стрелки от ячейки А к ячейке В.
В языке Pascal с помощью следующего объявления можно создать переменную – указатель prt
, указывающую на ячейку определённого типа, например ТипЯчейки:

Название: Структуры Данных и Абстракции Данных
Раздел: Рефераты по информатике, программированию
Тип: реферат
Добавлен 08:48:00 06 июля 2005 Похожие работы
Просмотров: 319
Комментариев: 16
Оценило: 4 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Если Вам нужна помощь с учебными работами, ну или будет нужна в будущем (курсовая, дипломная, отчет по практике, контрольная, РГР, решение задач, онлайн-помощь на экзамене или "любая другая" учебная работа...) - обращайтесь: https://clck.ru/P8YFs - (просто скопируйте этот адрес и вставьте в браузер) Сделаем все качественно и в самые короткие сроки + бесплатные доработки до самой сдачи/защиты! Предоставим все необходимые гарантии.
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Реферат: Структуры Данных и Абстракции Данных
Реферат На Тему Озеро Байкал 8 Класс
Реферат по теме Латентность и криминологический анализ латентных преступлений
Внеурочная Деятельность Курсовая Работа
Отчет По Практике Сельхозпредприятие
Реферат: Financial Services Essay Research Paper What is
Реферат: Michael Leunig Essay Research Paper Michael Leunig
Территориальная Организация Курсовая
Реферат На Тему Энергия Солнца
Ведомственный И Внутрихозяйственный Финансовый Контроль Реферат
Курсовая работа по теме Промышленная революция в Западной Европе
Контрольная Работа По Алгебре Линейные Функции
Реферат: Truth Of Juvenile Delinquency Essay Research Paper
Сочинение Подпись К Фотографии 7 Класс
Реферат по теме Отраслевой и конкурентный анализ
Реферат по теме Конкуренция и рыночное поведение фирмы
Курсовая работа: Маргинальный слой в российском обществе. Скачать бесплатно и без регистрации
Защита Диссертации Дистанционно В Связи С Коронавирусом
Контрольная работа: Статистика населения
Реферат На Тему Институт Взаимной Социальной Ответственности И Его Проблемы
Дипломная работа по теме Оценка эффективности организационных изменений
Топик: Грамматика
Реферат: Народы России в Гражданской войне
Реферат: Организация информации

Report Page