C++中使用元组的Deque示例
什么是Deque?
在C ++中,Deque是一种序列容器,也被称为双端队列。顾名思义,Deque允许从两端进行插入和删除。虽然Deque类似于vector,但是与vector相比,Deque更高效。在vector中,保证连续的存储分配,但在Deque中情况可能并非如此。Deque是队列的特殊情况,因为在两端都允许插入和删除操作。
与Deque相关的函数:
- push_front() : 用于从容器前面推元素。
- push_back() : 用于从容器后面推元素。
- front() : 用于引用容器的第一个元素。
- back() : 用于引用容器的最后一个元素。
什么是Tuple?
在C ++中,Tuple是用于将元素分组在一起的对象。在Tuple中,元素可以是相同的数据类型或不同的数据类型。 Tuple的元素将按访问顺序初始化。
与Tuple相关的函数:
make_tuple() : make_tuple()用于为Tuple分配值。传递的值应与Tuple中声明的值按顺序传递。2. get():get()用于访问Tuple值并修改它们,它接受索引和Tuple名称作为参数以访问特定的Tuple元素。
如何访问Tuple?
使用get<>()函数访问Tuple元素。
语法:
auto fistElement = get<0>(myTuple);
auto secondElement = get<1>(myTuple);
auto thirdElement = get<2>(myTuple);
本文重点介绍如何在C++中创建一个带有元组的二维向量。
Deque of tuples
Deque的元素本身是一个元组的Deque容器。尽管Tuple可能包含更多或更少的元素,但为了简单起见,我们只考虑三个元素的Tuple。
语法:
**deque <tuple<dataType1, dataType2, dataType3>> myContainer; **
在这里,dataType1,dataType2和dataType3可以是相似的或不同的数据类型
示例1: 下面是实现Deque of tuples的C ++程序:
输出
示例2: 下面是实现元组双端队列的C++程序。
输出
比较元组双向队列的元素
此部分重点介绍比较两个元组双向队列的元素。 可以通过迭代两个元组双向队列来比较它们的元素。
例如: 在下面的程序中,我们创建了两个元组双向队列。元组的类型为{int,char,bool}。我们使用比较函数逐个比较两个双向队列的元素。请注意,两个元组的数据对象如果相应的数据对象相等,则认为两个元组相等。
输出