Библиотека Рефераты Курсовые Дипломы Поиск
Библиотека Рефераты Курсовые Дипломы Поиск
сделать стартовой добавить в избранное
Кефирный гриб на сайте www.za4et.net.ru

Компьютеры, Программирование Компьютеры, Программирование

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

Фонарь садовый «Тюльпан».
Дачные фонари на солнечных батареях были сделаны с использованием технологии аккумулирования солнечной энергии. Уличные светильники для
106 руб
Раздел: Уличное освещение
Крючки с поводками Mikado SSH Fudo "SB Chinu", №4BN, поводок 0,22 мм.
Качественные Японские крючки с лопаткой. Крючки с поводками – готовы к ловле. Высшего качества, исключительно острые японские крючки,
58 руб
Раздел: Размер от №1 до №10
Совок большой.
Длина 21,5 см. Расцветка в ассортименте, без возможности выбора.
21 руб
Раздел: Совки

Міністерство освіти і науки України Національний технічний університет України «КПІ» Кафедра медичної кібернетики та телемедицини Лабораторна робота №1 Тема: Динамічні структури данних Варіант №16 (задачі № 16.13(а), 16.18(а), 16.33). Виконав: студент ІМ-81 Плахтій Артур Миколайович Перевірив: старший викладач Зінченко Ніна Павлівна Київ 2009 Теоретична частина 1. Динамические структуры данных Ранее изучаемые типы данных относятся к так называемым статическим. Память под них выделяется во время компиляции, количество таких объектов не меняется во время выполнения программы. Однако существует ряд задач, где статические структуры неэффективны. В языке Паскаль имеются средства создания динамических структур данных, которые позволяют во время выполнения программы: образовывать объекты; выделять для них память; уничтожать, когда в них исчезает необходимость. Другое название динамической памяти – куча. Для получения ясного представления о динамических переменных надо рассмотреть структуру памяти во время выполнения программы на языке Паскаль (см. рис.1). Данные в динамической памяти размещают с использованием указателей. Указатель - это ссылка на определенную ячейку памяти, начиная с которой записывается значение переменной, поэтому данные такого типа называются еще и ссылочным типом данных. Формат описания ссылочного типа данных: ype &l ;тип указателя&g ; = ^ &l ;идентификатор типа&g ;, то есть указатель связан с некоторым типом данных. Такие указатели называются типизированными. Пример описания переменных ссылочного типа: ype p1=^i eger; p2=^real; Var A,B,C:p1; X,Y,Z:p2; P:char; Cсылочные переменные A, B, C указывают на динамические объекты целого типа, X,Y,Z - вещественного, P - символьного. Значением ссылочной переменной является адрес в динамически выделенной памяти, где хранится объект этого типа. Рис. 1. Структура памяти во время выполнения программы Для обращения к ссылочной переменной используют запись “ A^ ”, что означает: ”идти по адресу, хранящемуся в A”. Память под указатели отводится на этапе компиляции. Однако в Турбо Паскале можно объявлять указатель и не связывать его с конкретным типом данных. Такой указатель называется нетипизированным. Для его объявления служит стандартный тип poi er. Структура и тип таких данных могут меняться во время выполнения программы. При работе с указателями обязательны этапа два: объявление указателя; формирование динамических данных, память которых отводится во время выполнения программы. Для работы с указателями используются следующие процедуры: ew(P) - процедура, которая создает в динамической памяти новую переменную. Р - указатель переменной того типа, который надо создать. Каждая отдельная процедура ew может создать только одну динамическую переменную. Dispose(P) - процедура, позволяющая вернуть в кучу участок памяти, занятый объектом с указателем Р. Параметрами процедур ew и dispose может быть только типизированный указатель. Для работы с нетипизированными указателями используются аналогичные процедуры: Ge Mem(P,Size) - резервирование памяти; FreeMem(P,Size) - освобождение памяти.

Здесь Р - нетипизированный указатель,Size - размер в байтах требуемой или освобождаемой части кучи ( до 65521 байт). Над указателями могут быть определены операции проверки на равенство и присваивание (рис.2): Рис. 2. Допустимое присваивание Пример. Var x,y:^i eger; Begi ew(x); {порождаем динамический объект целого типа} x^:=13; {по адресу x заносим значение 13} y:=x; {в у заносим значение того же адреса, что и х} wri el (y^); e d. Ссылочной переменной может быть присвоенной “пустое” значение адреса, обозначенное служебным словом il, что означает, что ссылочная переменная не указывает ни на один динамический объект. Это присваивание можно делать до выполнения процедуры ew. Значение il - это два нулевых слова. Оно может быть присвоено указателю любого типа. Динамически размещенные данные можно использовать в любом месте программы, например: Var a, b, c = ^ real; Begi a^:=sqr(b^) c^-17; Недопустимо писать a:=sqr(b^), так как указателю нельзя присвоить значение вещественного выражения. 2. Линейные списки. Стек, очередь Указатели являются эффективным средством построения списковых структур, к которым относятся, в частности, линейные списки. Линейный список - это множество, состоящее из переменного числа узлов X. Структурные свойства такого списка: Если &g ;0, то Х является первым узлом; Если 1&l ;k&l ; , то k-му узлу Х; Х является последним узлом. Среди возможных списковых структур выделяют некоторые специальные списки. Стек - это линейный список, в котором все включения и исключения (и обычно всякий доступ) делаются в одном конце списка Наглядный пример стеков: стопка подносов в столовой, железнодорожный тупик. Стеки используются в работе алгоритмов, имеющих рекурсивный характер. Конец стека называется вершиной стека. Принцип работы стека - “последний пришел - первый вышел”. Внизу находится наименее доступный элемент. Часто говорят, что элемент опускается в стек. Очередь - это линейный список, в один конец которого добавляются элементы, а с другого конца исключаются. Принцип работы очереди: ”первый пришел - первый вышел”. 3. Организация списков в динамической памяти Для организации списков используются структуры типа запись, состоящие из двух частей: информационной, где собственно и находятся данные, и ссылочной, содержащей указатель на следующий элемент списка (рис.1). Cоздадим в динамической памяти структуру: Рис. 1. Пример списковой структуры где Di - данные. Чтобы получить доступ к данным, достаточно хранить в памяти адрес начала этого списка ach. В языке Турбо Паскаль последовательно проводится принцип, согласно которому, идентификатор, перед его использованием, должен быть описан. Исключение сделано только для указателей, которые могут ссылаться на еще не объявленный тип данных. Для описания элементов структуры подобной изображенной на рис. 3 можно использовать следующий ссылочный тип: ype eleme =^P r; P r=record d:i eger; li k:eleme ; e d; Список в динамической памяти можно создавать в прямом или обратном порядке (относительно последовательности вводимых элементов). Пример создания списка в обратном порядке (см.

рис.2): Рис. 2. Пример создания списка в обратном порядке Var i, ,a:i eger; ek, ach:P r; Begi ek:= il; readl ( ); for i:=1 o do begi readl (a); ew( ach); ach^.d:=a; ach^.li k:= ek;{цепочка присоединяется к ach} { } ek:= ach; e d; e d; Обратим внимание на вызов процедуры ew( ach). В результате этого вызова в динамической памяти отводится место для переменной типа record, которая в нашем случае состоит из двух полей: для хранения целочисленного значения и значения указателя, т.е. адреса. Здесь важно представлять, что после того, как переменная ach (или какая другая) создана в динамической памяти, тем самым имеем ее адрес, который сам является именем переменной, т.е. ach. Если у нас имеется другая переменная того же типа, ek, то мы знаем также и ее адрес, это ek. Поэтому, если в адресную часть переменной ach занести адрес ek, тем самым мы свяжем элементы ach и ek: ach^.li k:= ek. Алгоритм создания списка в прямом направлении: 1. Создать первый элемент ach. Ввести ach^.d; pred:= ach; 2. Создать текущий элемент ek. Ввести ek^.d; Установить связь предыдущего с текущим: pred^.li k:= ek; текущий элемент становится предыдущим: pred:= ek; 3. Если не конец списка, то перейти на 2. Обнулить адресную часть последнего элемента: ek^.li k:= il. Рис. 3. Пример создания списка в прямом направлении Таким образом, для обращения к списку достаточно хранить в памяти адрес первого элемента ach.Поскольку каждый элемент хранит адрес следующего за ним элемента, можно, двигаясь от начального элемента по адресам, получить доступ к любому элементу списка. Просмотреть элементы списка можно следующим образом: ek:= ach;{Встали на начало списка} while ek&l ;&g ; il do begi w i el ( ek^.d);{Вывести информационную часть} ek:= ek^.li k; {Шаг по связи} e d; Рассмотрим еще раз строку ek:= ek^.li k; . Ее можно интерпретировать по-другому: значению адреса ek присвоить то, что хранится в адресной части элемента ek, а там хранится адрес элемента, следующего за ek. Вообще нотацию ek^.li k следует различать в контексте ее нахождения: если она стоит слева от присваивания, имеется ввиду сама адресная часть элемента ek, а если справа от присваивания – то, что хранится в адресной части ek. Таким образом, например, ek^.li k:= ek^.li k будет означать: в адресную часть ek занести адрес элемента, следующего за ek. С построенным списком можно выполнять различные операции: добавлять и удалять элементы в любом месте списка, причем в зависимости от местоположения элемента эти операции имеют свои особенности. Алгоритм добавления элемента в начало списка: 1. Создать новый элемент ov. Ввести информационную часть ov^.d. 2. Построить связь: ov^.li k:= ach. 3. Новый элемент сделать начальным: ach= ov. Рис. 4. Добавление элемента в начало списка Нетрудно удалить первый элемент ( ach:= ach^.li k). Главное - не забыть физически удалить его из памяти (процедура Dispose). Добавление элемента в середину списка: пусть переменная ek указывает на элемент, после которого необходимо вставить в список элемент ov. Сначала нужно заполнить связь у элемента ov: ov^.li k:= ek^.li k; затем соединить ek и ov: ek^.l

Харриса), трансформационной грамматики, теории речевых актов, формальной логики в плане выполнения условий его правильной оформленности (когеренция и когезия) и следования дедуктивным правилам (теория речевых актов), т.е. анализ дискурса совпадал по существу со структуралистски ориентированными грамматикой текста, лингвистикой текста, семантикой дискурса в первоначальном европейском понимании (Вольфганг Дресслер, П.А.М. Сьюрен, Ольга Ивановна Москальская, Юрий Владимирович Попов и др.). Функционально-лингвистическое течение в анализе дискурса сложилось под влиянием коммуникативно-прагматических моделей языка и идей когнитивной науки. Оно обращает внимание на динамический характер дискурса как процесса конструирования говорящим / пишущим и процессов интерпретации слушающим / читающим (Дж. Браун и Дж. Юл, Т.А. ван Дейк). Здесь считается необходимым учёт при анализе прагматических факторов и контекста дискурса (референция, пресуппозиции, импликатуры, умозаключения), контекста ситуации, роли топика и темы, информационной структуры (данное -- новое), когезии и когеренции, знания мира (фреймы, скрипты, сценарии, схемы, ментальные модели)

1. Динамические структуры данных: очереди

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

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

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

5. Разработка алгоритмов и программ выполнения операций над последовательными и связанными представлениями структур данных

6. Структуры данных: бинарное упорядоченное несбалансированное дерево
7. Структуры данных и алгоритмы
8. Иерархические структуры данных в реляционных БД

9. Структуры данных и алгоритмы

10. Алгоритмы и структуры данных. Программирование в Cи

11. Структура данных программного комплекса "Q-дерево"

12. Структуры данных и алгоритмы

13. Структура базы данных

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

15. Неинерциальные полевые принципы формирования структуры материи. Закон динамической гравитации

16. Патогенез эндоэкологической болезни и структура заболеваемости жителей г.пущино в динамике с учетом данной экосистемы

Соска для бутылочек Перистальтик Плюс "Pigeon" c широким горлом (с 6 месяцев), отверстие L.
Соска Wide neck с Y-образным отверстием для бутылочек PIGEON с широким горлышком. Уникальная конструкция соски позволяет воспроизводить
358 руб
Раздел: 6-18 месяцев
Обучающая игра "Сложи узор".
Обучающая игра "Сложи Узор" состоит из 16 одинаковых кубиков. Все 6 граней каждого кубика окрашены по-разному в 4 цвета. Это
513 руб
Раздел: Кубики (10 и более штук)
Мельница "Молинеро" для специй, четырёхуровневая.
Мельница «Молинеро» полностью механическая, не требует подзарядки от электросети или от батареек. Вы можете не только перемалывать, но и
620 руб
Раздел: Измельчители, приспособления для резки

17. Определение термина "состояние" в структуре динамического пространства сознания-тела

18. Структуры и алгоритмы обработки данных

19. Типы и элементы планировочной структуры города

20. Структура организации материи

21. Анализ устойчивости и поддержание орбитальной структуры космической системы связи

22. Структура и функции клеточного ядра
23. Синапсы (строение, структура, функции)
24. Роль и значение машиностроительного комплекса в структуре народного хозяйства России

25. Дания

26. Особенности годового хода приземной температуры воздуха в разных частях Земли по данным ОА Гидрометцентра РФ

27. План статистического наблюдения и данные переписи населения

28. Безработица в России /данные на 1992г/

29. Государственный аппарат и его структура

30. Нормы права. Структура норм права

31. Структура государственных органов США по Конституции 1787 года

32. Налоговая система Дании

Шарики пластиковые, цветные, 100 штук.
Пластиковые шарики - веселая игра для малышей, ими можно играть где угодно - дома, на улице, в детском саду, наполнять детский манеж,
638 руб
Раздел: Шары для бассейна
Фоторамка "Poster blue" (30х40 см).
Рамка может располагаться как вертикально, так и горизонтально. Для фотографий размером: 30х40см. Материал: пластик.
331 руб
Раздел: Размер 30x40
Магнитные истории "Что мне надеть".
Игра научит ребенка: ориентироваться по ситуации, внимательности, развития мелкой моторики, фантазии, аккуратности, усидчивости. В
499 руб
Раздел: Игры на магнитах

33. Международная организация труда- создание, структура, задачи и организация её работы

34. Структура закона Саратовской области "О местном самоуправлении в Саратовской области". Полномочия органов местного самоуправления в области жилищного хозяйства, коммунально-бытового и торгового обслуживания населения

35. Структура, содержание и значение общей части Налогового кодекса России

36. Структура налоговых органов РФ права, обязанности и функции

37. Структура налоговых органов Российской Федерации

38. Понятие права и правовой нормы. Виды и структура правовой нормы. Понятие и виды юридической ответственности
39. Понятие, структура и методики построения страховых тарифов
40. Структура правовых норм

41. Структура и функции государственного аппарата

42. Сравнительное описание слоговых структур английского и каракалпакского языков

43. Культура, её структура и функции

44. Структура и организация учебного процесса в средневековом университете (Болонья, Париж, Прага)

45. Судьба и творчество Даниила Хармса

46. Проблематика и структура пьесы Б. Шоу "Пигмалион"

47. Бальзак: структура и основные идеи "Человеческой комедии"

48. Сравнительное описание слоговых структур английского и каракалпакского языков

Чернила "Bottle Quink", синие, 57 мл.
Цвет – синий. Объем – 57 мл. Материал флакона – стекло.
449 руб
Раздел: Чернила, тушь, штемпель
Кружка-хамелеон "Любовь".
Каждый человек знает, как приятно говорить о своих чувствах любимым. Кружка-хамелеон "Любовь" поможет Вам чаще признаваться в
314 руб
Раздел: Кружки
Набор посуды керамической "Миньоны" (3 предмета), желтый.
Набор детской керамической посуды с изображением героев любимых диснеевских мультфильмов в подарочной упаковке. Состав набора: • тарелка:
547 руб
Раздел: Наборы для кормления

49. Даниил Галицкий и его внутренняя и внешняя политика (Данило Галицький - його внутрЁшня та зовнЁшня полЁтика)

50. Методы компьютерной обработки статистических данных

51. Основные компоненты систем управления документооборотом. Фрейм: его структура и понятие

52. Интернет: административное устройство и структура глобальной сети

53. Построение сети передачи данных

54. Управление потоками данных в параллельных алгоритмах вычислительной линейной алгебры
55. Оценка методов и средств обеспечения безошибочности передачи данных в сетях
56. Системы и сети передачи данных

57. Структура персонального компьютера. Основные и периферийные устройства, их характеристики и назначение

58. Динамическое распределение памяти

59. Информация, информатика, базы данных. Периферийные устройства

60. Динамические объекты /TurboPacal/

61. Сжатие данных

62. Анализ структур, характеристик и архитектур 32-разрядных микропроцессоров

63. Пример базы данных на Delphi 2.0

64. Структура и реализация макроязыков

Шкатулка для ювелирных украшений, 13x13x6 см, арт. 84412.
Шкатулка сохранит ваши ювелирные изделия в первозданном виде. С ней вы сможете внести в интерьер частичку элегантности. Регулярно удалять
832 руб
Раздел: Шкатулки для украшений
Комплект постельного белья 1,5-спальный "Самойловский текстиль. Настроение", с наволочками 50х70.
Постельное белье "Самойловский текстиль" – отличный подарок себе и близким. Качественное, удобное и красивое постельное белье
1249 руб
Раздел: Бязь
Бумага чертежная, А2, 594x420 мм, 100 листов.
Плотность: 200 г/м2, ГОСТ 597-73.
1687 руб
Раздел: Папки для акварелей, рисования

65. Проектирование и разработка баз и банков данных

66. База данных для учета оплаты за междугородние разговоры

67. Реляционные Базы Данных. SQL - стандартный язык реляционных баз данных

68. Программа сложной структуры с использованием меню

69. Примеры баз данных (Студенческая группа)

70. Программа сложной структуры с использованием меню
71. Работа с Базами данных в Delphi
72. Анализ пакетов обработки экспериментальных данных SABR и BOOTSTRAP

73. Разработка базы данных, отражающей учет успеваемости студентов

74. Разработка базы данных "Кадры"

75. Лекции по теории проектирования баз данных (БД)

76. Разработка базы данных

77. Fox Pro - реляционная модель данных

78. Система управления базами данных ACCESS

79. База данных - Бактериологическая испытательная лаборатория Боханского района

80. Моделирование структуры книги

Подставка для бумажных полотенец "Mayer & Boch", 32 см.
Высота: 32 см. Материал: дерево (бамбук).
387 руб
Раздел: Крючки, держатели для полотенец, доски для записок
Кресло детское "Бюрократ" (цвет: розовый/белый, арт. CH-W797/PK/TW-13A).
Регулировка высоты (газлифт). Пружинно-винтовой механизм качания спинки. Эргономичная спинка (сетка). Ограничение по весу: 120 кг.
5264 руб
Раздел: Стульчики
Средство от садовых муравьев "Муравьин", 300 грамм.
Препарат для эффективного уничтожения всех типов муравьев в домах, на садовых участках, на террасах. Без запаха! Препарат разрешен для
337 руб
Раздел: От тараканов и прочих насекомых

81. Разработка приложений на языке VBA в среде MS EXCEL по обработке данных для заданных объектов

82. Обработка данных о студентах

83. Инструкция по эксплуатации базы данных магазина «Телевизоры» средствами Access 2000

84. Системы обработки информации - язык баз данных SQL со средствами поддержания целостности

85. Структура и программирование ПЛИС фирмы Altera в САПР Quartus II, её применение в лабораторном стенде

86. Обзор ситуации с внедрением автоматизированных банковских систем в финансовых структурах России
87. HTML и базы данных
88. Работа в среде EXCEL. Средства управления базами данных в EXCEL

89. Структура сходящихся последовательностей

90. Применение алгоритма RSA для шифрования потоков данных

91. Структура аффинного пространства над телом

92. Исследование регрессии на основе численных данных

93. Общие данные о нервной системе

94. Структура арбитражных судов

95. Взяточничество и коррупция в деятельности преступных структур (сообществ)

96. Федеральная служба Российской Федерации по контролю за оборотом наркотических средств и психотропных веществ: система и структура, основные полномочия

Набор цветных гелевых ручек, 30 цветов.
Набор цветных гелевых ручек, 10 цветов с блестками, 5 цветов пастельных, 5 цветов - мультицвет, 10 цветов - гель. Размер ручки 15 см.
545 руб
Раздел: Цветные
Стерилизатор "Care" для микроволновой печи (на 3 бутылочки).
Стерилизатор Care предназначен для стерилизации детских бутылочек. С помощью данного устройства можно эффективно простерилизовать
1045 руб
Раздел: Стерилизаторы, сушилки
Подставка для ножей овальная, 16x6,5x22 см.
Размеры: 16х6,5х22 см. Материал корпуса: пластик. Внутренняя часть: полипропиленовое волокно. Цвет: бежевый. Предназначена для безопасного
822 руб
Раздел: Подставки для ножей

97. Влияние экологических и медико-биологических требований на структуру исследований и разработок

98. Биосфера и её структура

99. Структура педагогических способностей преподавателя


Поиск Рефератов на сайте za4eti.ru Вы студент, и у Вас нет времени на выполнение письменных работ (рефератов, курсовых и дипломов)? Мы сможем Вам в этом помочь. Возможно, Вам подойдет что-то из ПЕРЕЧНЯ ПРЕДМЕТОВ И ДИСЦИПЛИН, ПО КОТОРЫМ ВЫПОЛНЯЮТСЯ РЕФЕРАТЫ, КУРСОВЫЕ И ДИПЛОМНЫЕ РАБОТЫ. 
Вы можете поискать нужную Вам работу в КОЛЛЕКЦИИ ГОТОВЫХ РЕФЕРАТОВ, КУРСОВЫХ И ДИПЛОМНЫХ РАБОТ, выполненных преподавателями московских ВУЗов за период более чем 10-летней работы. Эти работы Вы можете бесплатно СКАЧАТЬ.