Программирование на языке С++. Викентьева О.Л - 60 стр.

UptoLike

60
Лабораторная работа 11
"Информационные динамические структуры"
Цель: Знакомство с динамическими информационными структу-
рами на примере одно- и двунаправленных списков.
1. Краткие теоретические сведения
Во многих задачах требуется использовать данные у кото-
рых конфигурация, размеры, состав могут изменяться в про-
цессе выполнения программы. Для их представления исполь-
зуют динамические информационные структуры.
Наиболее простая информационная структураэто од-
носвязный список, элементами которого служат объкты
структурного типа. Например
struct имя_структурного_типа
{
элементы_структуры;
struct имя_структурного_типа *указатель;
}
В каждую структуру такого типа входит указатель на объ-
ект того же типа, что и определяемая структура.
beg
Примеры:
1. Описание структуры
struct point
{int key;
point* next;
};
Поле key содержит информационную часть структуры
point, а поле next содержит адрес следующего элемента
списка.
2. Функция для формирования однонаправленного списка
point* make_point( int n)
{
point *first, *p;
first=NULL;
for (int i=n;i>0;i--)
{
данные указатель
д
анные
у
казатель
данные
у
казатель
д
анные
N
ULL
                                                        60


               Лабораторная работа № 11
       "Информационные динамические структуры"
Цель: Знакомство с динамическими информационными структу-
рами на примере одно- и двунаправленных списков.
              1. Краткие теоретические сведения
   Во многих задачах требуется использовать данные у кото-
рых конфигурация, размеры, состав могут изменяться в про-
цессе выполнения программы. Для их представления исполь-
зуют динамические информационные структуры.
      Наиболее простая информационная структура – это од-
носвязный список, элементами которого служат объкты
структурного типа. Например
      struct имя_структурного_типа
   {
   элементы_структуры;
   struct имя_структурного_типа *указатель;
   }
   В каждую структуру такого типа входит указатель на объ-
   ект того же типа, что и определяемая структура.

      данные            указатель
beg

               данные          указатель


                    данные          указатель


                               данные           NULL



Примеры:
1. Описание структуры
struct point
{int key;
point* next;
};
     Поле key содержит информационную часть структуры
point, а поле next содержит адрес следующего элемента
списка.
2. Функция для формирования однонаправленного списка
point* make_point( int n)
{
point *first, *p;
first=NULL;
for (int i=n;i>0;i--)
{