Posted By

avrevic on 01/10/12


Tagged

queueu


Versions (?)

pokazivaciqueue


 / Published in: C++
 

Implementacija reda pomocu pokazivaca

  1. struct tpacijent {
  2. int xi,yi,prioritet;
  3. tpacijent*sljedeci;
  4. };
  5. struct telement {
  6. tpacijent* front,*rear;
  7. };
  8. int AddOne(int n) {
  9. return((n+1)%10000);
  10. }
  11. int InitQ(telement*element) {
  12. tpacijent*glava=new tpacijent;
  13. glava->sljedeci=NULL;
  14. element->front=glava;
  15. element->rear=glava;
  16. }
  17. bool IsEmptyQ(telement*element) {
  18. if(element->rear==element->front)return 1;
  19. return 0;
  20. }
  21. void EnQueueQ(tpacijent*pacijent,telement*element) {
  22. element->rear->sljedeci=pacijent;
  23. pacijent->sljedeci=NULL;
  24. element->rear=pacijent;
  25. }
  26. tpacijent*FrontQ(telement*element) {
  27. tpacijent*pacijent;
  28. pacijent=element->front->sljedeci;
  29. return pacijent;
  30. }
  31. void DeQueueQ(telement*element) {
  32. tpacijent*glava=new tpacijent;
  33. glava=element->front;
  34. element->front=glava->sljedeci;
  35. delete glava;
  36. }
  37. //FrontQ(Q) - Funkcija koja vraca vrijednost
  38. //elementa koji se trenutno nalazi na celu reda.
  39. //EnQueueQ(x,Q) - Procedura koja dodaje
  40. //novi element s vrijednoscu x na zacelje reda.
  41. //DeQueueQ(Q) - Procedura koja brise
  42. //element s cela reda.
  43. //InitQ(Q) - Procedura koja inicira prazan red.
  44. //IsEmptyQ(Q) - logicka funkcija koja odgovara
  45. //na pitanje da li je red prazan.

Report this snippet  

You need to login to post a comment.