본문 바로가기
IT/[Everyday]Coding

queue 구현

by Jang HyunWoong 2014. 12. 19.

  1. #include <cstdlib>
  2. #include <iostream>
  3. using namespace std;
  4. #define QUEUE_C 8
  5. int queue[QUEUE_C];
  6. int head = 0;
  7. int tail = -1;
  8. int queue_size = 0;
  9.  
  10. void enqueue(int n)
  11. {
  12. if(queue_size == QUEUE_C){
  13. cout << "queue is full \n";
  14. return;
  15. }
  16. tail++;
  17. queue_size++;
  18. queue[tail]=n;
  19. }
  20.  
  21. int dequeue()
  22. {
  23. int r;
  24. if(queue_size == 0)
  25. {
  26. cout << "queue is empty\n";
  27. return 0;
  28. }
  29. r = queue[head];
  30. head++;
  31. queue_size--;
  32. return r;
  33. }
  34. int main()
  35. {
  36. int number, r;
  37. do
  38. {
  39. cout << "input number : ";
  40. cin >> number;
  41.  
  42. if(number > 0)
  43. {
  44. enqueue(number);
  45. }else if(number == 0){
  46. r = dequeue();
  47. cout << r << endl;
  48. }
  49. }while(number>=0);
  50. return 0;
  51. }


반응형

'IT > [Everyday]Coding' 카테고리의 다른 글

[이항계수]경우의 수 구하는 프로그램  (0) 2014.12.19
팩토리얼 계산 2가지 방법  (0) 2014.12.19
배열 회전  (0) 2014.12.19
두 원소 바꾸기 swap()  (0) 2014.12.19
C++로 간단하게 구현한 스택  (0) 2014.12.19