DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Стек і черга. Хеш таблиця

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Інформаційні системи та мережі

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

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Алгоритми і структури даних
Група:
КН

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

Міністерство освіти і науки України Національний університет "Львівська політехніка" Кафедра "Інформаційні системи та мережі"    Лабораторна робота № 4 з предмету: Алгоритми і Структури Даних на тему: Стек і черга. Хеш таблиця          ЛЬВІВ-2008  Текст програми на мові С++: #include <stdio.h> #include <stdlib.h> #include <conio.h> #define MAXITEM 100 class quequ1 { protected: int val[MAXITEM]; int top; public: quequ1(){ top=0; } void push(int nval) { if(top==MAXITEM) { printf("Quequ overflow error\n"); exit(-1); } val[top++]=nval; } int pop() { if(top==0) { printf("Quequ no item error\n"); exit(-1); } int nval=val[0]; for(int i=1; i<top; i++) val[i-1]=val[i]; top--; return nval; } void show() { printf("["); if(top>=1) printf("%d", val[0]); for(int i=1; i<top; i++) printf(",%d", val[i]); printf("]"); } void test() { int tmp, i; printf("Form:\n"); for(i=0; i<5; i++) push(random(20)); show(); for(i=0; i<8; i++) { if(random(2)) { push(tmp=random(20)); printf("\npush(%d)\n", tmp); } else { tmp=pop(); printf("\npop=%d\n", tmp); } show(); } } }; class quequ2 { protected: int val[MAXITEM]; int bottom, top; public: quequ2(void){ bottom=0; top=0; } void push(int nval) { if(top==MAXITEM) { if(bottom==0) { printf("Quequ overflow error\n"); exit(-1); } for(int i=bottom; i<top; i++) val[i-bottom]=val[i]; top-=bottom; bottom=0; } val[top++]=nval; } int pop() { if(top==bottom) { printf("Quequ no item error\n"); exit(-1); } bottom++; return val[bottom-1]; } void show() { printf("["); if(top>=bottom+1) printf("%d", val[bottom]); for(int i=bottom+1; i<top; i++) printf(",%d", val[i]); printf("]"); } void test() { int tmp, i; printf("Form:\n"); for(i=0; i<5; i++) push(random(20)); show(); for(i=0; i<8; i++) { if(random(2)) { push(tmp=random(20)); printf("\npush(%d)\n", tmp); } else { tmp=pop(); printf("\npop=%d\n", tmp); } show(); } } }; int main() { quequ1 q1; quequ2 q2; randomize(); clrscr(); puts("\nTEST QUEQU TYPE 1\n"); q1.test(); getch(); clrscr(); puts("\nTEST QUEQU TYPE 2\n"); q2.test(); getch(); return 0; } Результати компютерної реалізації програми: Результати компютерної реалізації програми виправдали очікування і підтвардили правильність її складання. Нижче наведено скріншот, який демонструє це:   Висновки Під час виконання роботи я придбав і закріпив навички моделювання зв’язаних динамісних структур даних та роботи з ними.
Антиботан аватар за замовчуванням

30.11.2012 00:56

Коментарі

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

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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