4913

Организация списочных и древовидных структур

Лекция

Информатика, кибернетика и программирование

Организация списочных и древовидных структур. В тех случаях, когда количество данных, обрабатываемых программой, заранее не известно или изменяется в процессе работы программы, использовать жестко определённые типы данных (массивы) не рационально ил...

Русский

2012-11-29

16.05 KB

1 чел.

Организация списочных и древовидных структур.

В тех случаях, когда количество данных, обрабатываемых программой, заранее не известно или изменяется в процессе работы программы, использовать жестко определённые типы данных (массивы) не рационально или вовсе невозможно.

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

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

Определяется некоторая запись, содержащая помимо основных информационных полей дополнительное поле, в котором хранится указатель на следующую такую же запись в памяти.

 

р

н

к

Описания в паскале.

Type ppp:^student;

Student=record

 Fio: string;

 Age: integer;

 P_next: ppp; // если написать :^student; , выдаст ошибку

 End;

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

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

Type p_student=^student;

Student=record

 Name:string;

 Age:integer;

 P_next:p_student;

 End;

Var count:integer;

I:integer;

P_start, p_work, p_dop :p_student;

Begin

Writeln(‘ введите количество записей ‘);

Readln(count);

P_start:=NIL;

P_work:=NIL;

P_dop:=NIL;

 For i:=1 to count do

 Begin

 New(p_dop);// где-то появилась запись.

 Write(‘введите имя ‘);

 Readln(p_dop^.name);

 Write(‘введите возраст’);

 Readln(p_dop^.age);

 P_dop.p_next:=NIL;

 If p_start=NIL then  //списка ещё нет, создан 1 элемент.

  p_start:=p_dop;

 else 

p_work^.p_next:=p_dop;

 p_work:=p_dop;

 end;

 // печать списка

P_work:=p_start;

 For i:=1 to count do

 Begin

 Writeln(p_work^.name,’  ‘,p_work^.age);

 P_work:=p_work^.p_next;

 End;

 {While p_work<>NIL do

 Begin

 Writeln(p_work^.name,’  ‘,p_work^.age);

 P_work:=p_work^.p_next;

 End;}

// если мы закончим программу, не удалив из памяти размещённые нами элементы, то

//после закрытия программы windows будет считать, что эта память по прежнему кем-то занята.

//удаление списка из память

While p_work<>NIL do

 Begin

 P_start:=p.work^.next;

 Dispose(p_work);

 P_work:=p_start;

 End;

End.


 

А также другие работы, которые могут Вас заинтересовать

74140. Источники (формы) административного права 16.24 KB
  Виды юридических источников административного права: нормативный правовой акт – вид юридического акта принятый компетентными субъектами правотворчества и содержащий нормы административного права; административно-правовой договор нормативного содержания – двустороннее или многостороннее соглашение между субъектами правотворчества содержащее нормы административного права; административный прецедент – решение по конкретному управленческому делу которое становится обязательным для всех аналогичных дел возникающих в будущем; правовой обычай...
74143. Административно-правовой акт 19.1 KB
  Юридическая природа административного акта состоит в том что он: является правовой формой управленческого решения; при помощи его орган исполнительной власти должностное лицо решает общие или конкретные вопросы которые возникают в процессе его деятельности по реализации задач и функций государственного управления; выражает юридически значимое волеизъявление субъекта исполнительной власти в виде предписания обязательного для адресата; издается в одностороннем порядке т. выражает волю только одной стороны субъекта исполнительной...
74144. Государственная служба: понятие, категории должностей и принципы 14.83 KB
  Государственная служба РФ – профессиональная служебная деятельность граждан Российской Федерации по обеспечению исполнения полномочий РФ; федеральных органов государственной власти иных федеральных государственных органов; субъектов РФ; органов государственной власти субъектов РФ иных государственных органов субъектов РФ; лиц замещающих должности устанавливаемые Конституцией федеральными законами для непосредственного исполнения полномочий федеральных государственных органов; лиц замещающих должности устанавливаемые конституциями...
74145. Государственный служащий: понятие, виды 14.14 KB
  В соответствии с принципом разделения властей существуют государственные служащие замещающие должности в органах государственной власти: представительной исполнительной судебной иных органах. В зависимости от групп должностей различают
74146. Понятие и виды административно-правовых отношений 18.61 KB
  Признаки административных правоотношений: являются публичными правоотношениями имеющими в своей основе общественный государственный интерес; носят властный характер так как в процессе возникновения изменения и прекращения данных правоотношений реализуется государственное управление; являются организационными поскольку государственное управление связано с организационными установками что и проявляется в организационном характере административных правоотношений; в случае нарушения административно-правовых отношений наступает...
74147. СУБЪЕКТЫ АДМИНИСТРАТИВНЫХ ПРАВООТНОШЕНИЙ 15.76 KB
  Субъект административноправовых отношений – участник административноправовых отношений обладающий административной правосубъектностью правоспособностью дееспособностью наделенный субъективными правами и юридическими обязанностями. Субъектами административного права принято считать физическое или юридическое лицо организация которые в соответствии с установленными административным законодательством Российской Федерации нормами участвуют в осуществлении публичного управления и в реализации функций исполнительной власти. отношения между...
74148. Структура административно-правовых отношений 17.73 KB
  Субъект это участник сторона правоотношения в сфере исполнительной власти наделенный соответствующими государственно-властными полномочиями по осуществлению управленческих функций. В течение длительного времени они могут не вступать ни с кем в административные правоотношения т. Субъект же правоотношения всегда конкретен.