This is an old revision of the document!
Corectare Tema 1
Depunctări
De marcat în spreadsheet, doar dacă ceva este în neregulă, următoarele rubrici:
efecte laterale:
1 dacă folosește funcții cu efecte laterale
checker tricks:
numele funcțiilor care sunt inginerite astfel încât să treacă mai multe teste decât ar trebui
(etapa 2) funcții curry:
un număr între 1 și 3, în funcție de câte dintre tt+, et+, add-to-counter nu sunt implementate în formă curry
(etapa 2) abstractizare funcții:
1 dacă min-tt și min-et nu sunt derivate dintr-o funcție mai abstractă, evitând rescrierea aceluiași cod
(etapa 3) abstractizare date:
1 dacă TDA-ul queue nu este folosit doar prin intermediul interfeței sale
(etapa 4) fluxuri ineficiente:
1 dacă TDA-ul queue trece testele fără a implementa eficient (conform indicațiilor) rotate/enqueue/dequeue
Sugestii de întrebări la prezentare
(etapa 1)
(etapa 2)
unde exploatăm faptul că am definit funcții curry
cum determinăm câte case noi trebuie deschise și care sunt indecșii acestora
cum este folosit remove-first-from-counter
(etapa 3)
cum tratăm cazul în care în numărul dat de minute ies mai mulți clienți (de la aceeași casă / de la case diferite)
cum ordonăm clienții care ies simultan
de ce este implementată coada cu 2 stive
(etapa 4)
ce operație pe coadă optimizăm și cum
s-a modificat în vreun fel structura counter
ce se întâmplă cu clienții de la casele care se închid
(generic)
ce se schimbă de la o etapă la alta
câte moduri diferite de a reprezenta coada de clienți s-au folosit în cele 4 etape
care sunt situațiile tratate de funcția serve
unde s-au putut / s-ar fi putut folosi funcționale