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

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

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

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

Динамічні структури даних

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

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

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

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

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

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

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

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

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

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

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

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

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра інформаційних систем та мереж Лабораторна робота №11 на тему Динамічні структури даних Львів 2008 Мета роботи: Вивчити способи створення динамічних структур даних (списків, стеків, дерев, ...) та виконання операцій над ними. 1. Ввести з клавіатури послідовність цілих чисел без знаку та записати у відповідне бінарне дерево їх двійкові коди. Згенерувати ціле випадкове число без знаку та, використовуючи дерево, знайти його двійковий код або вивести повідомлення про відсутність числа у дереві. Текст програми: 1) #include<stdio.h> #include<conio.h> #include<stdlib.h> #include<string.h> #define n 10 struct ttree { char *data; struct ttree *left; struct ttree *right; }; char *bina(int a); struct ttree *addtotree(struct ttree *head); void printtree(struct ttree *head); int findtr(struct ttree *head); char *x; void main() { int i,a; struct ttree *head; randomize(); head=0; for(i=0;i<n;i++) { scanf("%d",&a); x=bina(a); head=addtotree(head); } a=random(20); x=bina(a); printtree(head); if (findtr(head)) printf("\n\nznajdeno:\n%s",x); else printf("\n\nneznajdeno:\n%s",x); getch(); } char *bina(int a) { int i; char *b; b=(char *)calloc(9,1); b[8]=0; for(i=7;i>=0;i--,a/=2) b[i]=a%2+'0'; return b; } struct ttree *addtotree(struct ttree *head) { if(!head) { head=(struct ttree *)malloc(sizeof(struct ttree)); head->left=0; head->right=0; head->data=x; } else { if(strcmp(head->data,x)<0) head->right=addtotree(head->right); if(strcmp(head->data,x)>0) head->left=addtotree(head->left); } return head; } void printtree(struct ttree *head) { if(head != 0) { printtree(head->left); puts(head->data); printtree(head->right); } } int findtr(struct ttree *head) {int a=1; if(!head) return 0; if(strcmp(head->data,x)>0) a=findtr(head->left); if(strcmp(head->data,x)<0) a=findtr(head->right); return a; } Відлагодження програми : 
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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