📜  C++ STL中的deque :: push_front()(1)

📅  最后修改于: 2023-12-03 14:39:51.807000             🧑  作者: Mango

C++ STL中的deque::push_front()

在STL中,deque (双向队列)是一种能够在两端追加/删除元素的数据结构。push_front()成员函数用于将元素插入deque的前端。

void push_front (const value_type& val);

其中value_type是deque中元素的类型。该函数接受一个参数val,表示要添加到deque前端的元素值。

下面是一个简单的示例程序,演示了如何使用push_front()函数:

#include <iostream>
#include <deque>

int main () {
  std::deque<int> mydeque (3,100);
  mydeque.push_front(200);
  mydeque.push_front(300);

  std::cout << "mydeque contains:";
  for (std::deque<int>::iterator it = mydeque.begin(); it!=mydeque.end(); ++it)
    std::cout << ' ' << *it;
  std::cout << '\n';

  return 0;
}

该程序创建了一个包含3个值为100的整数的deque对象,然后使用push_front()函数在deque前端添加了两个元素。最后,程序迭代输出了deque中的所有元素。

输出结果如下:

mydeque contains: 300 200 100 100 100

可以看到,我们成功地将两个元素添加到了deque的前端。

需要注意的是,由于deque是一个双向队列,我们既可以使用push_front()添加元素到前端,也可以使用push_back()添加元素到后端。而且,在deque中添加/删除元素的效率非常高,因为它内部使用了一些高级数据结构来实现。