Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.
Ambele părți revizuirea anterioară Versiuni anterioare Urmatoarea versiune | Versiuni anterioare Ultima versiune Ambele părți următoarea reviziune | ||
laboratoare:laborator-04 [2017/03/12 19:06] mihai.iacov [Noţiuni introductive] |
laboratoare:laborator-04 [2017/03/23 23:02] iulian.matesica [5.1. Exerciții - schelet de laborator] |
||
---|---|---|---|
Linia 107: | Linia 107: | ||
void search_tree_preordine (tree *root) { | void search_tree_preordine (tree *root) { | ||
if( root!=NULL){ | if( root!=NULL){ | ||
- | | + | |
search_tree_preordine(root-> | search_tree_preordine(root-> | ||
search_tree_preordine(root-> | search_tree_preordine(root-> | ||
Linia 237: | Linia 237: | ||
- | =====5 Exerciții==== | + | =====5.1. Exerciții |
- | - Să se realizeze stocul unei farmacii, | + | Pentru acest laborator puteți descărca scheletul de cod de [[http:// |
- | Evidența medicamentelor se ține cu un program care are drept structură de date un arbore de căutare după nume medicament. | + | |
+ | === Linux=== | ||
+ | Puteti folosi utilitarul '' | ||
+ | |||
+ | | ||
+ | * '' | ||
+ | |||
+ | Pentru compilare folositi comanda '' | ||
+ | =====5.2. Exerciții==== | ||
+ | - Se dă un vector cu n întregi. Scrieţi o funcţie care să creeze un arbore binar de căutare cu valorile din vector. | ||
+ | - Se dă un arbore binar ce stochează întregi. Scrieţi o funcţie care verifică dacă arborele este binar de căutare. | ||
+ | - Se dă un arbore binar de căutare ce stochează | ||
+ | - Acelaşi arbore – inserare(şi să rămână arbore de căutare) | ||
+ | - Acelaşi arbore – ştergere(şi să rămână arbore de căutare) | ||
+ | |||
+ | Puteţi testa primele 5 exerciţii în acelaşi program. | ||
+ | |||
+ | ===Problemă întreagă=== | ||
+ | * Să se realizeze stocul unei farmacii, | ||
+ | |||
+ | Evidența medicamentelor se ține cu un program care are drept structură de date un arbore de căutare după nume medicament. | ||
Să se scrie programul care execută următoarele operații: | Să se scrie programul care execută următoarele operații: | ||
*Creează arborele de căutare | *Creează arborele de căutare | ||
Linia 245: | Linia 265: | ||
*Tipăreste medicamentele în ordine lexicografică | *Tipăreste medicamentele în ordine lexicografică | ||
*Elimină un nod identificat prin nume medicament | *Elimină un nod identificat prin nume medicament | ||
- | *Creează un arbore de căutare cu medicamentele care au data de expirare mai meche decât o dată specificată de la terminal | + | *Creează un arbore de căutare cu medicamentele care au data de expirare mai " |
- | *Determinați greutatea arborelui și verificați dacă este binar complet sau nu | + | *Determinați greutatea(fie greutatea = numărul de frunze) |
+ | |||
+ | ===Probleme de interviu=== | ||
+ | * Se dă V(un vector de n întregi) şi P(un vector de taţi de lungime n). Verificaţi dacă se poate construi un arbore binar de căutare cu valorile din V şi legăturile copil-părinte din P. | ||
+ | * Fie un arbore binar perfect cu înălţimea H. Creaţi (H + 1) vectori/ | ||
+ | * Găsiţi cel mai apropiat strămoş comun pentru două noduri dintr-un arbore binar. | ||
+ | * Se dau doi arbori binari cu întregi, A1 şi A2, iar A1 conţine mult mai multe noduri decât A2. Verificaţi dacă A2 arată la fel ca un subarbore din A1.(“Arată la fel”, adică valorile întregi sunt aceleaşi) | ||