Advertisement
35657

Untitled

Mar 26th, 2024
391
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.51 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. //#include <ctime>
  4.  
  5. using namespace std;
  6.  
  7. template <typename T>
  8. class Queue {
  9. public:
  10.     void Push(const T& element) {
  11.         elements_[size] = element;
  12.         size++;
  13.     }
  14.     void Pop() {
  15.         if (size > 0) {
  16.             for (int i = 0; i < size - 1; i++) {
  17.                 elements_[i] = elements_[i + 1];
  18.             }
  19.             size--;
  20.         }
  21.     }
  22.     const T& Back() const {
  23.         return elements_[size];
  24.     }
  25.     T& Back() {
  26.         return elements_[size];
  27.     }
  28.  
  29.     const T& Front() const {
  30.         return elements_[0];
  31.     }
  32.     T& Front() {
  33.         return elements_[0];
  34.     }
  35.  
  36.     void Print() const {
  37.         for (int i = 0; i < size; i++) {
  38.             cout << elements_[i] << ' ';
  39.         }
  40.         cout << endl;
  41.     }
  42.  
  43.     int Size() const {
  44.         return size;
  45.     }
  46.     bool IsEmpty() const {
  47.         return size == 0;
  48.     }
  49.  
  50. private:
  51.     T elements_[100];
  52.     int size = 0;
  53. };
  54.  
  55. int main() {
  56.     Queue<int> queue;
  57.     //int start_time = clock();
  58.     for (int i = 0; i < 10; ++i) { // для замеров 500000 ставить
  59.         queue.Push(i);
  60.         queue.Print(); // для замеров закомментировать
  61.     }
  62.     cout << endl;
  63.  
  64.     while (!queue.IsEmpty()) {
  65.         queue.Print(); // для замеров закомментировать
  66.         queue.Pop();
  67.     }
  68.     cout << endl;
  69.     //int end_time = clock();
  70.     //cout << end_time - start_time << " milliseconds" << endl;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement