Posted By

vimandic on 12/02/11


Tagged

red polje implementacija


Versions (?)

Impl reda pomocu polja


 / Published in: C++
 

Implementacija reda pomoću polja

  1. typedef int element;
  2.  
  3. struct qu {
  4. elementtype elements[10000];
  5. element front,rear;
  6. };
  7.  
  8. typedef struct qu queue;
  9.  
  10.  
  11. int AddOne(int n) {
  12. return((n+1)%10000);
  13. }
  14.  
  15.  
  16. elementtype FrontQ(queue *Q) {
  17. if (AddOne((*Q).rear)==(*Q).front) {
  18. printf("Red je prazan");
  19. exit(0);
  20. }
  21. else
  22. return((*Q).elements[(*Q).front]);
  23. }
  24.  
  25.  
  26. void EnqueueQ(elementtype x,queue *Q) {
  27. if (AddOne(AddOne((*Q).rear))==(*Q).front) {
  28. printf("Red je popunjen");
  29. exit(0);
  30. }
  31. else {
  32. (*Q).rear=AddOne((*Q).rear);
  33. (*Q).elements[(*Q).rear]=x;
  34. }
  35. }
  36.  
  37.  
  38. void DequeueQ(queue *Q) {
  39. if (AddOne((*Q).rear)==(*Q).front) {
  40. printf("Red je prazan");
  41. exit(0);
  42. }
  43. else
  44. (*Q).front=AddOne((*Q).front);
  45. }
  46.  
  47.  
  48. void InitQ(queue *Q) {
  49. (*Q).rear=9999;
  50. (*Q).front=0;
  51. }
  52.  
  53.  
  54. int IsEmptyQ(queue *Q) {
  55. if (AddOne((*Q).rear)==(*Q).front)
  56. return(-1);
  57. else
  58. return(0);
  59. }

Report this snippet  

You need to login to post a comment.