Содержание
- 2. Списки Список — структура данных, представляющая собой конечную последовательность связанных элементов. Элемент списка: Семинар 10. Стеки,
- 3. Односвязные списки Односвязный список — список, у элементов которого существует связь, указывающая на следующий элемент (односторонняя
- 4. Односвязные списки struct list { int data; struct list *next; }; struct list *head = NULL,
- 5. Циклические списки Циклический список — список, в котором связь указывает на первый или один из других
- 6. Двусвязные списки Двусвязный список — список, элементы которого имеют по две связи, указывающие на предыдущий и
- 7. Двусвязные списки struct List { int data; struct list *prev; struct list *next; }; Семинар 10.
- 8. Иерархические списки Иерархический список — список, значениями элементов которого являются указатели на другие списки (подсписки). Семинар
- 9. Операции над линейными списками 1. Получить доступ к некоторому элементу списка, проанализировать и / или изменить
- 10. Операции над линейными списками Не все операции нужны одновременно. Будем различать типы линейных списков по набору
- 11. Стек Стек (от англ. stack — штабель, стопка) — линейный список, в котором все вставки, удаления
- 12. Очередь Очередь (англ. queue) — это линейный список, в котором все вставки производятся на одном конце,
- 13. Дек Дек (от англ. deque — double-ended queue — двусторонняя очередь) — это линейный список, в
- 14. Стеки Push-down список Реверсивная память Гнездовая память Магазин LIFO: last in first out Список йо-йо Семинар
- 15. Операции со стеками 1. Опустошение. 2. Создание. 3. Получение значения вершины без удаления. 4. Получение значения
- 16. Реализация стека на Си struct list { int data; struct list *next; }; typedef struct stack
- 17. Опустошение стека void makenull(Stack *S) { struct list *p; while (S -> top) { p =
- 18. Создание стека Stack *create() { Stack *S; S = (Stack *) malloc(sizeof(Stack)); S -> top =
- 19. Получение значения вершины без удаления int top(Stack *S) { if (S -> top) return (S ->
- 20. Получение значения вершины c удалением int pop(Stack *S) { int a; struct list *p; p =
- 21. Добавление нового элемента void push(int a, Stack *S) { struct list *p; p = (struct list
- 22. Проверка пустоты int empty(Stack *S) { return (S -> top == NULL); } Семинар 10. Стеки,
- 23. Виды записи выражений Префиксная: операция перед операндами. Инфиксная (скобочная): операция между операндами. Постфиксная (обратная польская): операция
- 24. Виды записи выражений a + (f – b * c / (z – x) + y)
- 25. Перевод из инфиксной формы в постфиксную Вход: строка, содержащая арифметическое выражение, записанное в инфиксной форме. Выход:
- 26. Перевод из инфиксной формы в постфиксную Алгоритм: Шаг 0: Взять первый элемент из входной строки и
- 27. Пример Входная строка: a + ( f – b * c / ( z – x
- 28. Вычисления на стеке Вход: строка, содержащая выражение, записанное в постфиксной форме. Выход: число — значение заданного
- 29. Пример Входная строка: 5 2 3 * 4 2 / − 4 / + 1 −
- 30. Очереди FIFO: first in first out Семинар 10. Стеки, очереди, деки
- 31. Операции с очередями 1. Опустошение. 2. Создание. 3. Получение значения начала без удаления. 4. Получение значения
- 32. Реализация очереди на Си struct list { int data; struct list *next; }; typedef struct queue
- 33. Опустошение очереди void makenull(Queue *Q) { struct list *p; while (Q -> first) { p =
- 34. Создание очереди Queue *create() { Queue *Q; Q = (Queue *) malloc(sizeof(Queue)); Q -> first =
- 35. Получение значения начала без удаления int first(Queue *Q) { if (Q -> first) return (Q ->
- 36. Получение значения начала c удалением int outqueue(Queue *Q) { int a; struct list *p; p =
- 37. Добавление нового элемента void inqueue(int a, Queue *Q) { struct list *p; p = (struct list
- 39. Скачать презентацию




































WB Транзит
Электронная подпись PayControl
Аппаратное и программное обеспечение ПК. Лекция №5
Своя игра. Логика
Администрирование информационных систем. Администрирование БД
Тип данных. Структура и коллекции. Visual Studio c#
Информационные технологии в менеджменте
Шартты оператор
Лабораторная работа: Описание класса
Программирование в виде релейно-контактных схем. МПСвЭПиТК
Тіл сөйлеген сайын жетіледі, жазған сайын қалыптасады. Тілдің тынысы сөйлеген кезде ғана ашылады
Разработка программного комплекса для создания печатных полутоновых защитных элементов для маркировки продукции
Software engineering
E-Liibrary и РИНЦ. Новые вызовы научному сообществу в связи с образовательными реформами
Глобальная программа экономии бюджета Карта PRIZM c кэшбэком 20-50%
Компьютерные игры в культурном контексте: от классического понимания до постмодерна
Faol supervayzerlarini e’tirof qilish dasturi
Федеральный фонд данных ДЗЗ из космоса – порядок ведения и эксплуатации
Электронная информационно-образовательная среда. ФГБОУ ВО Шадринский государственный педагогический университет
Shriv ComMedia Solution Services IOT services embedded programming & Research remote infrastructure management services
Вводное обучение по Битрикс 24 для LeadGram
Решение логических задач средствами алгебры логики
Интерфаол технологиялар. Таҳлил қиладиган технологиялар
Метод нечіткого оцінювання впливу обслуговуючого персоналу на якість функціонування інформаційної системи
Компьютерные программы
Анализ группы джедоистов
ТЗ по сайту на фриланс
Массивы. Описание массивов