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

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

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

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

Лабораторна робота №7: Дерева. Бінарні дерева. Пошук

Оригінальна назва роботи

Дерева. Бінарні дерева. Пошук.

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

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

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

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

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

У роботі досліджено динамічне збереження бінарних дерев та реалізовано алгоритм пошуку вершини. Наведено лістинг програми на мові C та зроблено висновок щодо набутих навичок.

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

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

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

  1. Мета роботи
  2. Завдання для виконання
  3. Варіант індивідуального завдання
  4. Текст програми
  5. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів
Викладачі:Викладач кафедри

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

бінарне деревовершинавказівникдинамічна пам'ятьпошукфункціяструктураmallocрекурсія

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

Міністерство освіти і науки Національний університет “Львівська політехніка” Кафедра ІСМ Лабораторна робота №7 “ Дерева. Бінарні дерева. Пошук. ” Львів 2008 Мета роботи: набуття навичок програмування дерев. Завдання для виконання Розробити засоби динамічного збереження дерев та виконання дій над ними згідно варіанту. Варіант індивідуального завдання Знайти вершину в дереві. Текст програми #include<stdlib.h> #include<conio.h> struct tree {int key; struct tree *l,*r;}; struct tree *root, *cur; struct tree * Find(struct tree *, int); struct tree * insert (struct tree *c, int k, struct tree * new1) { struct tree *p,*l; int a; if(!c) {c=(struct tree*) malloc (sizeof(struct tree)); c->key=k; c->l =NULL; c->r =NULL; if (a==1) new1->l=c; if (a==2) new1->r=c; return(c); } else { new1=c; if(c->key>k) { c=c->l; a=1; p=insert (c,k,new1); } else {c=c->r; a=2; p=insert (c,k,new1); } } } void main() { clrscr(); int k,n; puts("Vvedit vershyny dereva"); scanf("%d",&k); root=insert(NULL,k,cur); scanf("%d",&k); while(k!=0) {cur=insert(root,k,cur); scanf("%d",&k);} puts("Vvedit vershynu yaku treba znauty"); scanf("%d",&k); cur=Find(root,k); if(!cur) puts("Nema takoi vershyny"); else puts("Ye taka vershyna"); } struct tree* Find(struct tree *c, int k) { if (!c) return (NULL); else {if (c->key==k) return (c); else if (c->key>k) c=Find(c->l,k); else c=Find(c->r,k); } }  Висновок: на даній лабораторній роботі я набув практичних навичок програмування дерев.
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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