ПредишенСледващото

Стек - динамична структура от данни, в която добавяне и изтриване на продукти, достъпни само в единия край (в горната част (последна) елемент).

Има някои съкращения:

  • LIFO = Последна В -> First Out - с "Кой издържи, първа изходяща от" Английски
  • Фило = First In -> Last Out - «за първи път през миналата навън"

    Динамични структури от данни в Паскал

    Последователни етапи, стека респ номера 1, 2, 3

    Следните операции се извършват в стека:

    • добавяне на нов елемент за топчето;
    • определяне дали пакета е празна;
    • достъп до най-новите включването на елементи, в горната част на комина;
    • изключване от комина на последния елемент включена.

    Създаване на звено структура:

    Добавяне на елемент към стека:

    процедура Push (Var Head: PNode х: овъгляване); Var NewNode: PNode; започва нов (NewNode); <выделение памяти> NewNode ^ .data: = х; <запись символа> NewNode ^ .next: = главата; <сделать первым узлом> Глава: = NewNode; приключи;

    Ограда елемент от върха:

    Обърнете внимание на детайлите на работата с стека като пример:

    Пример: е въведен низ характер, на които таговете са написани на ъглови скоби (<>). Определете дали правилните скоби са подредени (не се обръща внимание на другите герои).

    алгоритъм задача:

    1. първоначално празен пакет;
    2. примки през всеки знак на низа;
    3. Ако текущата характер - ъглова скоба, за отваряне, а след това я поставете на върха на комина;
    4. Ако текущата характер - затваряне скоба ъгъл, след това сложете на върха на стека: трябва да има ъгъл скоба отвор (в противен случай - грешка);
    5. в края на комина трябва да е празен, в противен случай - грешка.

    Създаване на структура стек:

    конст MAXSIZE = 50; въведете Stack = рекорд <стек рассчитан на 50 символов> тагове: масив [1..MAXSIZE] на знак; площ: цяло число; <число элементов> приключи;

    Опашка - динамична структура от данни, в които във всеки един момент са само два елемента: първият и последният. Добавяне на елементи е възможно само от единия край (края на линията) и премахване на елементи - само в другия край (на опашката).

    Налице е намаляване на опашката: FIFO = F ърво П - F ърво О ут, от английски - ". Кой е първият, който влиза, първата извънстолична"

    Следните операции са на разположение за опашката:

    • се добавят към края на опашката елемент (PushTail);
    • премахнете елемент от опашката (поп).

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

    Динамични структури от данни в Паскал

    опашка на работа чрез пръстеновидния масив:

    Динамични структури от данни в Паскал

    Ако редът 1:

    Динамични структури от данни в Паскал

    Ако опашката е празна:

    Динамични структури от данни в Паскал

    Ако опашката е пълна:

    Динамични структури от данни в Паскал

    Определяне на размера на масива (когато е празен и изпълнен линия):

    Динамични структури от данни в Паскал

    Опашката в Pascal (използване на пръстеновиден масив)

    Свързани статии

  • Подкрепете проекта - споделете линка, благодаря!