C++ STL 中的 deque::empty() 和 deque::size()
在本文中,我们将讨论 C++ STL 中 deque::empty() 和 deque::size() 函数的工作原理、语法和示例。
什么是 Deque?
Deque 是双端队列,是一种序列容器,可以在两端进行扩展和收缩。队列数据结构允许用户仅在尾部插入数据,并在头部删除数据。让我们以公交车站的队列为例,乘客只能在队列的尾部加入,而站在队列头部的人是第一个被移除的。而在双端队列中,可以在两端进行数据的插入和删除。
什么是 deque::empty()?
deque::empty() 是 C++ STL 中的一个内置函数,在 <deque> 头文件中声明。deque::empty() 检查给定的 deque 容器是否为空(大小为 0),如果与该函数关联的容器为空则返回 true 值,如果容器不为空则返回 false。
语法
mydeque.empty();
参数
此函数不接受任何参数。
返回值
如果给定的 deque 容器为空或 deque 容器的大小为 0,则此函数返回 true;否则,如果与该函数关联的 deque 中存在一些元素或容器的大小不为零,则该函数返回 false。
示例
Input: deque<int> mydeque = {10, 20 30, 40}; mydeque.empty(); Output: False Input: deque<int> mydeque; mydeque.empty(); Output: True
示例
#include <deque> #include <iostream> using namespace std; int main(){ int product = 1; deque<int> Deque; //inserting elements to a deque using push_back() function Deque.push_back(10); Deque.push_back(20); Deque.push_back(30); Deque.push_back(40); Deque.push_back(50); //traversing deque while it willn’t gets empty using empty() function while(!Deque.empty()){ product = product * Deque.front(); Deque.pop_front(); } //check if deque is empty or not if(Deque.empty()){ cout<<"Deque is empty and hence product is : "<<product; } else { cout<<"Deque is not empty "; } return 0; }
输出
如果我们运行上面的代码,它将生成以下输出:
Deque is empty and hence product is : 12000
什么是 deque::size()?
deque::size() 是 C++ STL 中的一个内置函数,在头文件中声明。deque::size() 返回与该函数关联的 deque 容器的大小。如果容器没有元素,则该函数返回 0。
语法
mydeque.size();
参数
此函数不接受任何参数。
返回值
此函数返回一个无符号整数值,即容器中存在的元素数量。
示例
Input: deque<int> mydeque = {10, 20 30, 40}; mydeque.size(); Output: 4 Input: deque<int> mydeque; mydeque.size(); Output: 0
示例
#include <deque> #include <iostream> using namespace std; int main(){ int product = 0; deque<int> Deque; //inserting elements to a deque Deque.push_back(10); Deque.push_back(20); Deque.push_back(30); Deque.push_back(40); Deque.push_back(50); //checking the size of a deque cout<<"size of deque is : "<<Deque.size(); return 0; }
输出
如果我们运行上面的代码,它将生成以下输出:
Size of deque is: 5
广告