Бакалавр
Дипломные и курсовые на заказ

Структура данных. 
Информатика и математика

РефератПомощь в написанииУзнать стоимостьмоей работы

Количество используемых индексов массива может быть различным. Массивы с одним индексом называют одномерными, с двумя — двумерными и т. д. Одномерный массив соответствует арифметическому вектору в математике, двумерный — матрице. Чаще всего применяются массивы с одним или двумя индексами, реже — с тремя, еще большее количество индексов встречается крайне редко. Динамическим называется массив… Читать ещё >

Структура данных. Информатика и математика (реферат, курсовая, диплом, контрольная)

Работа с данными упрощается, когда данные упорядочены, т. е. имеют структуру.

Структура данных — программная единица, позволяющая хранить и обрабатывать множество однотипных и (или) логически связанных данных в вычислительной технике. Для добавления, поиска, изменения и удаления данных структура данных предоставляет некоторый специальный набор функций.

При разработке программного обеспечения большую роль играет проектирование хранилища данных и представление всех данных в виде множества связанных структур данных. Сложность реализации и качество работы программ существенно зависят от правильного выбора структур данных. Различные виды структур данных подходят для различных приложений; некоторые из них имеют узкую специализацию для определенных задач.

Хорошо спроектированное хранилище данных оптимизирует использование ресурсов, требуемых для выполнения операций. Если данные хранятся в организованной структуре, то каждый элемент данных приобретает новый параметр — свой адрес в этой структуре. Работать с упорядоченными данными удобнее, но за это приходится платить увеличением их количества, поскольку адреса элементов — это дополнительные данные, которые тоже надо хранить и обрабатывать.

Рассмотрим некоторые структуры данных.

Массивы и связные списки

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

Количество используемых индексов массива может быть различным. Массивы с одним индексом называют одномерными, с двумя — двумерными и т. д. Одномерный массив соответствует арифметическому вектору в математике, двумерный — матрице. Чаще всего применяются массивы с одним или двумя индексами, реже — с тремя, еще большее количество индексов встречается крайне редко.

Динамическим называется массив, размер которого может меняться во время исполнения программы. Динамические массивы дают возможность более гибкой работы с данными, так как позволяют не прогнозировать хранимые объемы данных, а регулировать размер массива в соответствии с реально необходимыми объемами. Обычные, не динамические массивы называют еще статическими.

Достоинства:

— легкость вычисления адреса элемента массива по его индексам (поскольку элементы массива располагаются один за другим);

  • — одинаковое время доступа ко всем элементам;
  • — хранить нужно только сами данные, никакие дополнительные ссылки не требуются.

Недостатки:

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

В информатике связный список — структура данных, каждый элемент которой содержит как собственно данные, так и одну или две ссылки (указателя) на следующий и (или) предыдущий элемент списка.

Принципиальным преимуществом связного списка перед массивом является структурная гибкость: порядок элементов связного списка может не совпадать с порядком расположения элементов данных в памяти компьютера, а порядок обхода списка всегда явно задается его внутренними связями.

Пример 11.4.

1. Односвязный список (однонаправленный связный список). Более темным цветом обозначена ссылка (поле указателя) на следующий элемент списка.

Структура данных. Информатика и математика.

В односвязном списке можно передвигаться только в сторону конца списка. Узнать адрес предыдущего элемента из данного списка невозможно.

2. Двусвязный список (двунаправленный связный список). Более темным цветом обозначена ссылка на следующий/предыдущий элемент списка.

Структура данных. Информатика и математика.

По двусвязному списку можно передвигаться в любом направлении — как к началу, так и к концу. В этом списке проще производить удаление и перестановку элементов, так как всегда известны адреса тех элементов списка, указатели которых направлены на изменяемый элемент.

Достоинства:

  • — легкость добавления и удаления элементов;
  • — размер списка ограничен только объемом памяти компьютера и разрядностью указателей (ссылок);
  • — динамическое добавление и удаление элементов.

Недостатки:

  • — сложность определения адреса элемента по его индексу (номеру) в списке;
  • — на поля-указатели (указатели на следующий и (или) предыдущий элемент) расходуется дополнительная память (в массивах, например, указатели не нужны);
  • — работа со списком идет медленнее, чем с массивами, так как к любому элементу списка можно обратиться, только пройдя все предшествующие ему элементы. ?
Показать весь текст
Заполнить форму текущей работой