Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <locale.h>
- #include <conio.h>
- struct student
- {
- char* name;
- char* surname;
- char* patronimyc;
- int year;
- char letter;
- int* marks;
- int marks_numb;
- };
- struct tree
- {
- struct student* stud;
- struct tree* parent;
- struct tree* left;
- struct tree* right;
- };
- struct list
- {
- struct tree* node;
- struct list* next;
- };
- int get_int();
- char* get_string();
- int get_year();
- int get_positive();
- int* get_ints(int size);
- struct student* get_student();
- struct student* student_delete(struct student* stud);
- void student_print(struct student* stud);
- void student_copy(struct student* source, struct student* destinition);
- struct tree* add_element(struct tree* root, struct student* stud);
- void show_tree_recursive1(struct tree* root); //симметричный обход (левое поддерево -> корень -> правое)
- void show_tree_recursive2(struct tree* root); //прямой обход (корень -> левое поддерево -> правое поддерево)
- void show_tree_recursive3(struct tree* root); //обход снизу (левое поддерево -> прaвое поддерево -> корень)
- struct tree* add_element_recursive(struct tree* root, struct student* stud, struct tree* parent);
- void push(struct list** stack, struct tree* node);
- struct tree* pop(struct list** stack);
- void show_tree(struct tree* root); //нерекурсивный прямой обход дерева
- int choose();
- int students_cmp(struct student* stud1, struct student* stud2);
- struct tree* search(struct tree* root, struct student* stud);
- struct tree* tree_minimum(struct tree* root);
- void transplant(struct tree** root, struct tree* u, struct tree* v); //меняет поддерево u на поддерево v
- void tree_delete(struct tree** root, struct student* stud);
- void tree_show_by_level(struct tree* root, int level);
- void info();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement