Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

1Последовательное распределение массив

Работа добавлена на сайт samzan.net: 2016-03-30

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 17.5.2024

Программирование

26.03.2013

Динамические структуры данных

Существуют 2 способа хранения данных:

1)Последовательное распределение (массив)

****

****

2)Связное распределение (динамические структуры данных) – в общем виде список.

*

*

*

Признак сравнения

Массив

Список

Добавление элемента в конец

Пополняется легко

Пополняется легко

Добавление элементов в середину

Связан со сдвигом большого количества элементов

Легко

Добавление элементов в начало

Сдвиг всего массива

Легко

Удаление элемента из конца

Легко

Легко

Удаление элемента из середины

Связан со сдвигом большого количества элементов

Легко

Удаление элемента из начала

Легко

Легко

Размер одного элемента

Соответствует хранимым данным

Хранимые данные + размер указателя

Максимальный размер

Ограничен способом его объявления

Объёмом свободной памяти

Обращение к элементу по его номеру

Происходит естественным образом

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

Сортировка элементов

Классические алгоритмы

Требует дополнительной обработки

Указатели и основные действия с ними

Указатель – это переменная специального типа, которая может в себе содержать адрес некоторой ячейки памяти.

Указатели бывают 2-х видов:

1) Типизированные

2) Нетипизированные

Каждый указатель может находить в одном из трёх состояний:

1-ое состояние – неопределённое. Указатель находится в неопределённом состоянии до первого присвоения ему какого-либо значения.

2-ое состояние – неопределённое. Указатель содержит адрес конкретной ячейки памяти

3-е состояние – указатель пустой. Происходит тогда, когда под указатель не выделена память (nil).

Основные операции, выполняемые с указателями:

  1.  Объявление указателя

Var p1:^Integer; (^-показать, что это указатель)

P1

P2:Pointer; (нетипизированный указатель)

   

P2

  1.  Выделение памяти для указателя

New (p1);

  1.  Освобождение памяти из под указателя

Dispose(p1);

 

  1.  Присвоение данных

p1^:=4;

-разыменование

  5) Копирование адреса

P2:=p1

  1.  Копирование данных

p1^:=p2^

p1

     p2

Основные динамические структуры данных

  1.  Стек

Это структура данных, которая работает по принципу «последним защёл, первым вышел».

Type

pEl:^ tEl;

tEl=Record

data: Integer;

next: pEl;

end;

var pTop, pHelp: pEl;                                pTop

{создаём стек}                                          pHelp

Procedure StackCreate;

Begin    pTop

New(pTop);

pTop.next:=nil;

{мы подразумеваем pTop^.next)

pTop.data:=-1;

end;

{Добавляем один элемент}

Procedure StackAdd(x:Integer);

Begin

…..ДОПЕЧАТАТЬ

02.04.2013

Продолжение

Удаление элемента

pTop

  1.  Очередь

Это структура данных, которая работает по принципу «первым защёл, первым вышел».

Структура данных для очереди, такая же как и для стека.

Type

pEl:^ tEl;

tEl=Record

data: Integer;

next: pEl;

end;

{для работы с очередью нам необходимо три указателя.}

Var pBeg, pEnd, pHelp: pE1

{пустая очередь выглядит следующим образом}

 Рис1

{добавление в очередь}

 ….

  1.  Однонаправленный список

Структуры данных, для однонаправленного списка аналогичны структурам данным для очереди.

Пустой список выглядит также как пустая процедура очереди.

Процедура вывода списка аналогична процедуре вывода очереди.

Процедура добавление элемента в конец списка, аналогична процедуре добавления элемента в очередь.

Процедура удаление элемента из начала списка аналогична процедуре удаления элемента в очереди.

Необходимо:

1.создание.

2.добавление элемента в начало списка

3. добавление элемента в конец списка

4. добавление элемента после элемента с номером k.

5.удаление элемента из начала списка

6.удаление элемента из конца списка

7.удаление элемента с номером k.

8.вывод списка на экран.

Д.З. картинки+процедуры

  1.  Двунаправленный список

  1.  Двоичное дерево

…..ДОПЕЧАТАТЬ




1. 1к-в пр.тов.обращении Ав5я-Н
2. русского религиозного ренессанса началось с Соловьева
3. а сукупність управлінських відносин які складаються у сфері будьякого управління; б сукупність управлін
4. Экономика 20072008 учебный год экзаменатор Яковлева Т
5. ОМСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ ИНСТИТУТ ЭКОНОМИКИ И ФИНАНСОВ Е.
6. Анализ модели Манделла-Флеминга
7. Имидж ~ целенаправленно формируемый образ призванный оказать эмоциональнопсихологическое воздействие на
8. Лабораторная работа 31 Исследование электростатического поля
9. і. 2 травня ~ Виселення з готелю.html
10. Работа с одномерными массивами.html
11. структура позволяет выявлять связи изучать взаимодействия и соподчиненности составных частей различных
12. Применение электронных таблиц для расчёта биоритмов человека носит экспериментальнопрактический характ
13. Основные способы получения углеводородов в лаборатории
14. Тема- Українська ДержаваГетьманат 1918р
15. Влияние мультфильмов на совершенствование детей дошкольного возраст
16. Отчет по лабораторной работе 2 Определение термодинамических параметров воды и водяного пара при модели
17. сверху было отменено крепостное право в стране стал развиваться капитализм
18. Поняття та особливості бюджетного контролю
19. то подсчитал что при использовании беседы как основного способа получения информации о детях каждый реб
20.  З погляду одних кожна особистість формується і розвивається відповідно до її вроджених якостей здібностей