06.09.2014 Views

Structuri de date si algoritmi

Structuri de date si algoritmi

Structuri de date si algoritmi

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Structuri</strong> <strong>de</strong> <strong>date</strong> <strong>si</strong> <strong>algoritmi</strong><br />

1. Care este numarul maxim <strong>de</strong> noduri dintr-un arbore binar <strong>de</strong> inaltime 5?<br />

a) 15<br />

b) 31<br />

c) 63<br />

d) 64<br />

2. In cazul meto<strong>de</strong>i <strong>de</strong> sortare rapida(QuickSort) daca elementul pivot(dupa<br />

care se face partitionarea) este ales primul element, sortarea unui vector<br />

<strong>de</strong>ja ordonat crescator corespun<strong>de</strong> :<br />

a) cazului cel mai favorabil<br />

b) cazului cel mai <strong>de</strong>favorabil<br />

c) timpul nu poate fi apreciat<br />

3. Care este numarul minim <strong>de</strong> noduri dintr-un arbore AVL <strong>de</strong> inaltime 5?<br />

a) 15<br />

b) 12<br />

c) 31<br />

d) 25<br />

4. Parcurgand in inordine un arbore binar <strong>de</strong> cautare cheile vor fi in ordine:<br />

a)<strong>de</strong>screscatoare<br />

b)crescatoare<br />

c)in nici o ordine<br />

d)la inceput crescatoare, apoi <strong>de</strong>screscatoare<br />

5. Se con<strong>si</strong><strong>de</strong>ra o lista liniara <strong>si</strong>mplu inlantuita cu nodurile avand<br />

urmatoarea structura<br />

type<br />

pNod = ^TipNod;<br />

TipNod = record<br />

info : TipInfo;<br />

urm : pNod;<br />

end;<br />

Presupunem ca exista <strong>de</strong>claratia:<br />

var p :pNod;<br />

<strong>si</strong> ca variabila p contine adresa unui nod al listei. In aceste conditii,<br />

care este efectul urmatoarei secvente <strong>de</strong> instructiuni:<br />

if (p.^urm nul) p^.urm := p^.urm^.urm;<br />

a)sterge nodul care se gaseste la adresa p^.urm, in cazul in care exista<br />

b)adauga nodul p la lista<br />

c)sterge nodul care se afla la adresa p^.urm, in cazul in care acesta<br />

exista<br />

d)adauga nodul p^.urm la sfar<strong>si</strong>tul listei<br />

6. Se con<strong>si</strong><strong>de</strong>ra arborele binar <strong>de</strong> cautare din figura:<br />

7<br />

/ \<br />

3 10<br />

/ \ / \<br />

2 5 8 13<br />

Daca se parcurge in inordine acest arbore, ordinea corecta a vizitarii nodurilor<br />

este:<br />

a) 7, 3, 10, 2, 5, 8, 13


) 7, 3, 2, 5, 10, 8, 13<br />

c) 2, 3, 5, 7, 8, 10, 13<br />

d) 2, 5, 8, 13, 3, 10, 7<br />

7. Se con<strong>si</strong><strong>de</strong>ra arborele binar <strong>de</strong> cautare din figura:<br />

7<br />

/ \<br />

5 12<br />

/ \ /<br />

2 6 8<br />

In urma parcurgerii in preordine a acestui arbore, ordinea <strong>de</strong> vizitare a<br />

nodurilor este:<br />

a)7, 5, 2, 6, 12, 8<br />

b)7, 5, 12, 2, 6, 8<br />

c)2, 6, 8, 5, 12, 7<br />

d)2, 5, 6, 7, 8, 12<br />

8. Intr-un arbore AVL vid, se insereaza urmatoarele chei: 1, 2, 3, 4, 5, 6<br />

(in aceasta ordine).<br />

Care este configuratia arborelui dupa inserarea ultimei chei?<br />

a) 3<br />

/ \<br />

2 5<br />

/ / \<br />

1 4 6<br />

b) 2<br />

/ \<br />

1 5<br />

/ \<br />

4 6<br />

/<br />

3<br />

c) 4<br />

/ \<br />

2 5<br />

/ \ \<br />

1 3 6<br />

d) 4<br />

/ \<br />

3 5<br />

/ \ \<br />

1 2 6<br />

9. Daca un arbore binar <strong>de</strong> cautare echilibrat dupa inaltime contine 635<br />

noduri, rega<strong>si</strong>rea unei inregistrari nece<strong>si</strong>ta in cel mai rau caz:<br />

a)7 comparatii<br />

b)10 comparatii<br />

c)12 comparatii<br />

d)9 comparatii


10. Se con<strong>si</strong><strong>de</strong>ra urmatorul arbore binar <strong>de</strong> cautare:<br />

7<br />

/ \<br />

3 12<br />

/ \ \<br />

1 5 14<br />

Cheia pre<strong>de</strong>cesoare pentru 7 este:<br />

a)3<br />

b)5<br />

c)14<br />

d)12<br />

11. Se con<strong>si</strong><strong>de</strong>ra urmatorul arbore binar <strong>de</strong> cautare:<br />

7<br />

/ \<br />

5 10<br />

/ \<br />

2 20<br />

\<br />

4<br />

/<br />

3<br />

In urma stergerii nodului cu cheia 7, arborele va arata astfel:<br />

a) 4<br />

/ \<br />

5 10<br />

/ \<br />

2 20<br />

\<br />

3<br />

b) 10<br />

/ \<br />

5 20<br />

/<br />

2<br />

\<br />

4<br />

/<br />

3<br />

c) 5<br />

/ \<br />

2 10<br />

\ \<br />

4 20<br />

/<br />

3<br />

d) 5<br />

/ \<br />

4 10<br />

/ \<br />

3 20<br />

/


2<br />

12. Care afirmatie este a<strong>de</strong>varata?<br />

a)Arborii B sunt intot<strong>de</strong>auna perfect echilibrati.<br />

b)Arborii AVL sunt intot<strong>de</strong>auna perfect echilibrati.<br />

c)Arborii B nu sunt intot<strong>de</strong>auna perfect echilibrati.<br />

d)Arborii AVL <strong>si</strong> B sunt intot<strong>de</strong>auna perfect echilibrati.<br />

13. Se con<strong>si</strong><strong>de</strong>ra urmatorul arbore binar <strong>de</strong> cautare:<br />

7<br />

/ \<br />

6 9<br />

/ /<br />

3 8<br />

In urma inserarii cheilor 12, 4, 10, in aceasta ordine, cum va arata arborele?<br />

a) 7<br />

/ \<br />

6 9<br />

/ / \<br />

3 8 12<br />

\ /<br />

4 10<br />

b) 7<br />

/ \<br />

4 9<br />

/ \ / \<br />

3 6 8 10<br />

\ \<br />

4 12<br />

c) 7<br />

/ \<br />

6 9<br />

/ \ / \<br />

3 4 10 12<br />

/<br />

8<br />

d) 7<br />

/ \<br />

6 9<br />

/ / \<br />

3 8 10<br />

\ \<br />

4 12<br />

14. Intr-un arbore AVL, un nod <strong>de</strong>vine critic atunci cand:<br />

a)factorul sau <strong>de</strong> echilibrare <strong>de</strong>vine 2;<br />

b)factorul sau <strong>de</strong> echilibrare <strong>de</strong>vine -2;<br />

c)factorul sau <strong>de</strong> echilibrare <strong>de</strong>vine 2 sau -2;<br />

d)factorul sau <strong>de</strong> echilibrare <strong>de</strong>vine 1 sau -1;<br />

15. In urma inserarii unui nod intr-un arbore AVL, acesta se poate<br />

<strong>de</strong>zechilibra. In cazul in care se <strong>de</strong>zechilibreaza,<br />

care din urmatoarele operatiuni se pot folo<strong>si</strong> pentru reechilibrare?<br />

a)se insereaza noduri, pana cand <strong>de</strong>vine echilibrat;


)se sterg noduri, pana cand <strong>de</strong>vine echilibrat;<br />

c)se efectueaza rotatii pentru nodurile critice;<br />

d)nu se poate face nimic;<br />

16. Un nod dintr-un arbore binar <strong>de</strong> cautare are:<br />

a)exact doi copii;<br />

b)nu mai mult <strong>de</strong> doi copii;<br />

c)doi sau mai multi copii;<br />

d)oricati copii, <strong>de</strong>pinzand <strong>de</strong> gradul sau;<br />

17. Pentru un arbore binar <strong>de</strong> cautare <strong>de</strong> inaltime 5, care este numarul<br />

maxim <strong>de</strong> fruze la care acesta poate sa ajunga?<br />

a)15<br />

b)16<br />

c)18<br />

d)22<br />

18. Folo<strong>si</strong>nd metoda bulelor pentru a ordona o lista liniara <strong>si</strong>mplu<br />

inlantuita cu n noduri, timpul maxim folo<strong>si</strong>t este:<br />

a)O(n)<br />

b)O(n^2)<br />

c)O(log n)<br />

d)O(n * log n)<br />

19. Un arbore binar <strong>de</strong> cautare este AVL daca:<br />

a)pentru fiecare nod, inaltimile celor doi subarbori difera cel mult cu o<br />

unitate;<br />

b)nodurile frunza sunt pe acela<strong>si</strong> nivel;<br />

c)pentru nodul radacina, inaltimile celor doi subarbori difera cel mult cu<br />

o unitate;<br />

d)niciodata;<br />

20. Sa presupunem ca intr-un program Pascal exista urmatoarea<br />

<strong>de</strong>claratie:<br />

var p:^TipNod;<br />

In aceste conditii, care este efectul urmatoarei instructiuni:<br />

new(p);<br />

a) modifica o zona <strong>de</strong> memorie;<br />

b) sterge o zona <strong>de</strong> memorie;<br />

c) aloca o zona <strong>de</strong> memorie <strong>si</strong> atribuie variabilei p adresa <strong>de</strong> inceput a<br />

zonei alocate.<br />

21. Se con<strong>si</strong><strong>de</strong>ra o lista liniara <strong>si</strong>mplu inlantuita cu nodurile avand<br />

structura urmatoare:<br />

type<br />

pNod = ^TipNod;<br />

TipNod = record<br />

info:TipInfo;<br />

urm:pNod;<br />

end;<br />

Sa presupunem <strong>de</strong> asemenea ca exista <strong>de</strong>claratiile:<br />

var p,q:pNod;<br />

<strong>si</strong> ca variabila p contine adresa unui nod al listei. In aceste conditii, care<br />

este efectul urmatoarei secvente <strong>de</strong> instructiuni:<br />

new(q);<br />

q^.urm := p^.urm;<br />

p^.urm := q;


a) insereaza nodul indicat <strong>de</strong> q dupa nodul indicat <strong>de</strong> p;<br />

b) insereaza nodul indicat <strong>de</strong> q inaintea nodului indicat <strong>de</strong> p;<br />

c) sterge nodul indicat <strong>de</strong> p.<br />

22. Inaltimea unui arbore este egala cu numarul maxim <strong>de</strong> muchii<br />

traversate <strong>de</strong> la radacina la fiecare nod frunza. Care este numarul maxim<br />

<strong>de</strong> noduri ale unui arbore binar <strong>de</strong> inaltime 4 ?<br />

a) 16;<br />

b) 31;<br />

c) 32.<br />

23. Se con<strong>si</strong><strong>de</strong>ra un arbore binar <strong>de</strong> cautare. Care dintre parcurgerile<br />

standard viziteaza nodurile in ordinea crescatoare a valorilor cheilor lor<br />

?<br />

a) in preordine;<br />

b) in inordine;<br />

c) in postordine.<br />

24. Un arbore binar <strong>de</strong> cautare este un arbore AVL daca:<br />

a) inaltimile celor doi subarbori ai radacinii difera cel mult cu o<br />

unitate;<br />

b) doar daca inaltimile celor doi subarbori ai radacinii sunt egale;<br />

c) inaltimile celor doi subarbori ai radacinii difera cel putin cu o<br />

unitate.<br />

25. Sa presupunem ca se creaza un arbore binar <strong>de</strong> cautare ale carui<br />

noduri sunt numere intregi prin inserarea succe<strong>si</strong>va a n noduri cu cheile<br />

1, 2, ..., n, in aceasta ordine. In aceste conditii, cum este arborele<br />

rezultat ?<br />

a) echilibrat dupa inaltime;<br />

b) <strong>de</strong>generat; nodurile au doar <strong>de</strong>scen<strong>de</strong>nti stingi;<br />

c) <strong>de</strong>generat; nodurile au doar <strong>de</strong>scen<strong>de</strong>nti drepti.<br />

26. Cati arbori binari <strong>de</strong> cautare se pot forma cu trei noduri care au<br />

cheile 10, 20, 30 ?<br />

a) 6;<br />

b) 5;<br />

c) 9.<br />

27. Care este cazul in care complexitatea sortarii unui vector cu n chei<br />

prin algoritmul heapsort este O(n)<br />

a) vector gata sortat<br />

b) vector invers sortat<br />

c) vector cu chei egale<br />

d) vector cu structura <strong>de</strong> heap<br />

e) in nici un caz complexitatea nu poate fi O(n)<br />

28. Prin ce algoritm <strong>de</strong> sortare cu complexitatea temporala O(n*log(n))<br />

poate fi sortata o lista <strong>si</strong>mplu inlantuita, fara consum suplimentar <strong>de</strong><br />

spatiu <strong>de</strong> memorie:<br />

a) sortare prin insertie binara<br />

b) sortare rapida<br />

c) sortare prin interclasare<br />

d) sortare prin selectie directa<br />

e) nici unul


29. Alocarea secventiala a elementelor unei liste nu este a<strong>de</strong>cvata<br />

pentru:<br />

a) accesul la un nod arbitrar din lista<br />

b) inserarea unui nod in lista<br />

c) stergerea unui nod din lista<br />

d) adaugarea unui nod in lista<br />

30. Alocarea secventiala a elementelor unei liste ordonate nu este<br />

a<strong>de</strong>cvata pentru:<br />

a) accesul la un nod arbitrar din lista<br />

b) inserarea unui nod in lista<br />

c) modificarea partiala a unui nod, fara afectarea cheii <strong>de</strong> sortare<br />

31. Avantajul unei cautari Fibonacci, ce partitioneaza o lista conform<br />

unei secvente Fibonacci, consta in faptul ca:<br />

a) opereaza asupra listelor nesortate<br />

b) inlocuieste operatiile <strong>de</strong> impartire prin operatii <strong>de</strong> adunare <strong>si</strong> sca<strong>de</strong>re<br />

c) realizeaza <strong>si</strong> sortarea listei, concomitent cu operatia <strong>de</strong> cautare<br />

32. Un arbore poate fi a<strong>si</strong>milat unui:<br />

a) graf conex bipartit<br />

b) graf conex ciclic<br />

c) graf conex aciclic<br />

d) multigraf aciclic<br />

33. Un arbore binar <strong>de</strong>generat este:<br />

a) un arbore ce contine doar un nod (radacina)<br />

b) un arbore in care toate nodurile neterminale au doar <strong>de</strong>scen<strong>de</strong>nti stanga<br />

sau doar <strong>de</strong>scen<strong>de</strong>nti dreapta<br />

c) un arbore cu toate nodurile terminale <strong>si</strong>tuate pe nivele adiacente<br />

34. Cea mai eficienta metoda <strong>de</strong> traversare a arborilor binari insailati<br />

este:<br />

a) preordine<br />

b) inordine<br />

c) postordine<br />

35. Daca intr-un arbore binar <strong>de</strong> cautare echilibrat dupa inaltime sunt<br />

1000 <strong>de</strong> noduri (inregistrari), rega<strong>si</strong>rea unei inregistrari nece<strong>si</strong>ta, in<br />

cel mai rau caz:<br />

a) 1000 <strong>de</strong> comparatii<br />

b) 32 <strong>de</strong> comparatii<br />

c) 11 comparatii<br />

d) 6 comparatii<br />

36. Care din afirmatiile <strong>de</strong> mai jos nu este corecta:<br />

a) Arborii TRIE fac parte din categoria arborilor <strong>de</strong> rega<strong>si</strong>re<br />

b) Arborii TRIE contin in nodurile interne in<strong>de</strong>c<strong>si</strong> <strong>si</strong> in nodurile frunza<br />

pointeri catre inregistrarile memorate<br />

c) Arborii TRIE reprezinta tipuri <strong>de</strong> <strong>date</strong> care sunt <strong>si</strong>ruri <strong>de</strong> obiecte<br />

d) Arborii TRIE sunt arbori binari <strong>de</strong> cautare<br />

37. Care din afirmatiile <strong>de</strong> mai jos este corecta :<br />

a) Algoritmul lui Krushal <strong>de</strong>termina drumul minim nodurile grafului<br />

b) Algoritmul lui Dijkstra <strong>de</strong>termina <strong>si</strong> ciclurile negative


c) Algoritmii <strong>de</strong> <strong>de</strong>terminare a drumurilor minime se bazeaza pe relaxarea<br />

muchiilor<br />

d) Algoritmul lui Bellman-Ford are complexitatea O(V+E),<br />

un<strong>de</strong> V=numarul <strong>de</strong> varfuri, E=numarul <strong>de</strong> muchii<br />

38. Care din afirmatiile <strong>de</strong> mai jos nu este corecta :<br />

a) Algoritmul lui Krushal este un algoritm <strong>de</strong> tip greedy<br />

b) Algoritmul lui Prim este un algoritm <strong>de</strong> tip greedy<br />

c) Algoritmul lui Bellman-Ford este un algoritm <strong>de</strong> tip backtracking<br />

d) Algoritmul lui Dijkstra este un algoritm <strong>de</strong> tip greedy<br />

39. Inserarea unei chei intr-un arbore B poate duce la :<br />

a) Dezechilibrarea arborelui B<br />

b) Divizarea unei pagini a arborelui<br />

c) Nece<strong>si</strong>tatea efectuarii unor rotatii asupra arborelui<br />

d) Depa<strong>si</strong>rea spatiului alocat reprezentarii arborelui<br />

40. Care afirmatie este corecta:<br />

a) Arborii B sunt o generalizarea arborilor AVL<br />

b) Orice arbore AVL este <strong>si</strong> arbore binar <strong>de</strong> cautare<br />

c) Orice arbore B este <strong>si</strong> arbore TRIE<br />

d) Orice arbore SPLAY este <strong>si</strong> arbore B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!