Как удалить элементы из начала вектора (из реализованной очереди на базе массива) за константное время?
void push(const string& date, string str) {
ofstream out(str, ios::app);
if (queue.size() < length) {
queue.push_back(date);//добавление элемента в конец массива(в очередь) занимает 0(1)
}
else out << "overflow" << endl;
}
void pop(string str) {
ofstream out(str, ios::app);
if (!queue.empty()) {
out << queue.front() << endl;
queue.erase(queue.begin()); //удаление (функция erase) из начала вектора - 0(n)
}
else out << "underflow" << endl;
}