Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Використання динамічних списків на прикладі гри &Хрестики-нулики&

Реферат Використання динамічних списків на прикладі гри &Хрестики-нулики&





в'язків і програмними прикладами.

На всіх малюнках суцільними лініями показані зв'язку, що були до виконання і що збереглися після виконання операції. Пунктиром показані зв'язки, встановлені при виконанні операції. Значком x відзначені зв'язку, розірвані при виконанні операції. У всіх операціях надзвичайно важлива послідовність корекції покажчиків, яка забезпечує коректне зміна списку, що не зачіпає інші елементи. При неправильному порядку корекції легко втратити частину списку. Тому на малюнках поряд з встановлюваними зв'язками в дужках показані кроки, на яких ці зв'язки встановлюються.


Вставка елемента в список


Вставка елемента в середину 1-зв'язного списку


Вставка елемента в середину 2-зв'язного списку


Наведені приклади забезпечують вставку в середину списку, але не можуть бути застосовані для вставки в початок списку. При останній повинен модифікуватися покажчик на початок списку, як показано на малюнку.



Вставка елемента в початок 1-зв'язного списку


Видалення елемента зі списку


Видалення елемента з 1-зв'язного списку


Процедуру видалення елемента з двохзв'язной списку виявиться навіть простіше, ніж для одинзв'язного, оскільки в ній не потрібен пошук попереднього елемента, він вибирається за вказівником тому.


Перестановка елементів списку


Мінливість динамічних структур даних передбачає не тільки зміни розміру структури, а й зміни зв'язків між елементами. Для зв'язкових структур зміна зв'язків не вимагає пересилки даних у пам'яті, а тільки зміни покажчиків в елементах зв'язковий структури. Як приклад наведена перестановка двох сусідніх елементів списку.



Нелінійні розгалужені списки


Основні поняття

нелінійних розгалуженим списком є ??список, елементами якого можуть бути теж списки. Раніше ми расс?? отрелі двохзв'язной лінійні списки. Якщо один з покажчиків кожного елементу списку задає порядок зворотний до порядку, що встановлюється іншим покажчиком, то такий двусвязний список буде лінійним. Якщо ж один з покажчиків задає порядок довільного виду, який не є зворотним по відношенню до порядку, що встановлюється іншим покажчиком, то такий список буде нелінійним.

У обробці нелінійний список визначається як будь-яка послідовність атомів і списків (подсписков), де в якості атома береться будь-який об'єкт, який при обробці відрізняється від списку тим, що він структурно неподільний.

Спосіб подання, часто використовуваний для ілюстрації списків, - графічні схеми, аналогічний способу уявлення, вживаному при зображенні лінійних списків. Кожен елемент списку позначається прямокутником; стрілки або покажчики показують, чи є прямокутники елементами одного і того ж списку або елементами подсписка.



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


Розгалужені списки описуються трьома характеристиками: порядком, завглибшки і завдовжки.

Порядок. При поданні списків графічними схемами порядок визначається горизонтальними стрілками. Горизонтальні стрілки тлумачаться так: елемент з якого виходить стрілка, передує елементу, на який вона вказує.

Глибина. Це максимальний рівень, приписуваний елементам усередині списку або всередині будь-якого подсписка в списку. Рівень елемента наказується вкладеністю подсписков всередині списку. Глибина списку є максимальним значенням рівня серед рівнів всіх атомів списку.

Довжина. Це число елементів рівня 1 в списку. Наприклад, довжина списку на малюнку дорівнює 3.


Подання списковую структур в пам'яті


Відповідно до схематичним зображенням розгалужених списків типова структура елемента такого списку в пам'яті повинна бути такою, як показано на малюнку.



Структура елемента розгалуженого списку


У цьому випадку покажчик down вказує на дані або на подсписок. Оскільки списки можуть складатися з даних різних типів, доцільно адресувати покажчиком down не безпосереднє дані, а їх дескриптор, в якому може бути описаний тип даних, їх довжина і т.п. Сам опис того, чи є адресується покажчиком даних об'єкт атомом або вузлом також може знаходитися в цьому дескрипторі. Зручно зробити розмір дескриптора даних таким же, як і елемента списку. У цьому ...


Назад | сторінка 4 з 6 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Організація списку за допомогою двійкового дерева
  • Реферат на тему: Пам'ятки природи, занесені до списку ЮНЕСКО
  • Реферат на тему: Розробка програми, що реалізує алгоритм двусвязного списку
  • Реферат на тему: Реалізація концепції контейнерів і ітераторів на прикладі односпрямованого ...
  • Реферат на тему: Об'єктна реалізація поліморфного контейнера на основі лінійного списку