Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Проаналізуйте такі динамічні структури об’єктів як лінійні списки.
Лінійний список - це така ДСО (такий спосіб організації даних), яка для кожного елемента дозволяє вказати: 1) Який елемент є наступним для заданого; 2) Який елемент є попереднім для заданого; 3) Який лемент є наступним і який є попереднім. Для організації лінійних списків використовують структури або класи, поля яких поділяють на дві частини – інформаійна і зв’язкова (як правило, це набір вказівників). class List { int data; // інформаційна частина List *next; // зв’язкова (набір вказівників) }
Head (голова) - це елемент, від якого можна перейти до будь-якого іншого елемента списку. Tail (хвіст) – це елемент, зв’язок якого є нульовим. Порожній список – кількість його елементів рівна 0. Список, в якого всі елементи мають однаковий тип – однорідний, якщо до складу списку входять різнотипні елементи – неоднорідний. Списки поділяються на: - однозв’язні
- двозв’язні (мінімум 2 з’язки)
Лінійні списки можуть бути кільцевими:
- однозв’язний кільцевий
- двозв’язний кільцевий
|