Posted By

tomi91 on 11/29/11


Tagged

red polje


Versions (?)

red_polje.h


 / Published in: C++
 

Implementacija reda pomocu polja

  1. #define velicina 10000
  2. struct ordinacija{
  3. int x[velicina+1], y[velicina+1];
  4. int front, rear;
  5. };
  6. struct ordinacijaP{
  7. int x,y;
  8. };
  9. typedef ordinacijaP pomocna;
  10. typedef ordinacija red;
  11.  
  12. int AddOne(int n){
  13. return ((n+1)%(velicina+1));
  14. };
  15.  
  16. ordinacija *InitQ(ordinacija *&Q){
  17. Q=new ordinacija;
  18. Q->rear=velicina;
  19. Q->front=0;
  20. return Q;
  21. };
  22.  
  23. pomocna FrontQ(ordinacija *Q){
  24. pomocna pom;
  25. pom.x=pom.y=-1;
  26. if(AddOne(Q->rear) != Q->front){ // ako nije prazan red
  27. pom.x=Q->x[Q->front];
  28. pom.y=Q->y[Q->front];
  29. }
  30. return pom; // prazan red
  31. };
  32.  
  33. void EnQueueQ(pomocna x, ordinacija *Q){
  34. if(AddOne(AddOne(Q->rear)) != Q->front) { // ako nije pun red
  35. Q->rear=AddOne(Q->rear);
  36. Q->x[Q->rear]=x.x; // unos u red
  37. Q->y[Q->rear]=x.y;
  38. }
  39. else std::cout<<"Zapis nije dodan.\nPun red!\n";
  40. };
  41.  
  42. void DeQueueQ(ordinacija *Q){
  43. if(AddOne(Q->rear) != Q->front) // ako nije prazan red
  44. Q->front = AddOne(Q->front);
  45. else std::cout<<"Prazan red!\n";
  46. };
  47.  
  48. bool IsEmptyQ(ordinacija *Q){
  49. if(AddOne(Q->rear) != Q->front) // ako nije prazan red
  50. return false;
  51. return true;
  52. };

Report this snippet  

Comments

RSS Icon Subscribe to comments
Posted By: tomi91 on November 29, 2011

Moje rjesenje implementacije reda pomocu polja nema mnogo razlika izmedju ostalih primjera rjesenja. Postoje tek osnovne razlike kao i kod implementacije reda pomocu pokazivaca s imenima pojedinih varijabli, imenima struktura, definirao sam primjerice konstantu za velicinu polja, dakle promjenom te konstante mozemo vrlo jednostavno povecati ili smanjiti kapacitet polja (ne moramo nista vise mijenjati!). Nadalje, moguce da su usporedbe (provjere popunjenosti polja/reda) slicne ili drugacije, poredak funkcija itd.

You need to login to post a comment.