DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Структура даних «черга»

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2007
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Структури даних та алгоритми
Група:
КН
Коротко про документ

Про що ця робота

У звіті розглядається реалізація абстрактної структури даних «черга» за допомогою двох стеків на мові програмування C. Описано теоретичні відомості, наведено лістинг програми та результати її виконання.

У роботі розглядаються

  • Структури даних
  • Черга
  • Стек
  • Мова програмування C
  • Динамічні структури
  • Алгоритмічне моделювання

Зміст і розділи

  1. Теоретична частина
  2. Виконання роботи
  3. Завдання
  4. Результат виконання
  5. Висновок
Для кого:Студенти технічних спеціальностей, вивчаючі дисципліну «Структури даних та алгоритми».
Викладачі:Лисак Т. А.

Ключові поняття

чергастекдегвказівникструктура данихалгоритммоделюванняпрограмуваннямасивфункція

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний Університет « Львівська Політехніка» Кафедра ЕОМ Звіт до лабораторної роботи №4 на тему: « Структура даних „ЧЕРГА”.» Варіант 15. Назва роботи: Структури даних “черга”. Мета роботи: Закріпити теоретичні знання та оволодіти практичними навиками опрацювання структур даних “черга”. Засвоїти техніку створення та опрацювання складних типів даних. Теоретична частина: Чергою називається впорядкований набір елементів які можуть вилучатись з одного його кінця, який називається початком черги і додаватися в її кінець, який називається кінцем черги. Дег – об’єднання черги і стеку, де додавання і вилучення можливе з двох її кінців. Виконання роботи Завдання: Змоделюйте чергу за допомогою двух стеків, представлених за допомогою вказівників. Додавання елементу до черги зводиться до додавання до одному зі стеков, а перевірка, чи черга порожня - до перевірки, чи порожні обидва стеки. При вилученні елемента з черги можливі два випадки. Якщо стек, де знаходиться початок черги, не порожній, то вилучається з нього елемент. Якщо він порожній, то попередньо в нього переписуються всі елементи другого стеку, змінюючи порядок (це відбувається саме при перекладанні зі стеку в стек) і далі задача зводиться до першого випадку. #include <stdio.h> #include <conio.h> #include <stdlib.h> #define size 10 #define infotype int #define printfspec "%d " struct stacktype { infotype data[size]; int top,EMPTY,FULL; } ; typedef struct stacktype stack; void Init(stack *s); void Push(stack *s, infotype new_data); infotype Pop(stack *s); void Print(stack *s); void main() { stack ST; infotype x; Init(&ST); printf("\nEnter elements in the stack:\n"); do { printf("Enter the new element(zero - break inputing elements): "); scanf("%d",&x); if (x) Push(&ST,x); } while (x); Print(&ST); x=Pop(&ST); Print(&ST); Pop(&ST); Print(&ST); Pop(&ST); Print(&ST); Push(&ST,x); Print(&ST); getch(); return; } void Init(stack *s) { s->EMPTY=1; s->FULL=0; s->top=-1; return; } void Push(stack *s, infotype new_data) { if (s->FULL) printf(" Error : Stack overflowed! \n"); else s->data[++s->top] = new_data; s->EMPTY=0; if(s->top+1==size) s->FULL=1; else s->FULL=0; return; } infotype Pop(stack *s) { if (s->EMPTY) { printf(" Error : Stack is empty! \n"); return 0; } else{ s->FULL=0; if(s->top==0) s->EMPTY=1; else s->EMPTY=0; return s->data[s->top--];} } void Print(stack *s) { int i; printf("Elements of stack: "); if (s->EMPTY) printf("Stack is empty! \n"); else { for (i=0;i<=s->top;i++) printf(printfspec,s->data[i]); printf("\n"); } return; } Результат виконання  Висновок: Закріпив теоретичні знання та оволодів практичними навиками опрацювання структур даних “Черга”. Засвоїв техніку створення та опрацювання складних типів даних.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!