当前位置: 首页 > 编程笔记 >

什么是C ++中的deque.erase()?

周浩淼
2023-03-14
本文向大家介绍什么是C ++中的deque.erase()?,包括了什么是C ++中的deque.erase()?的使用技巧和注意事项,需要的朋友参考一下

在本文中,我们将讨论C ++中deque::erase()函数的工作,语法和示例。

什么是C ++ STL中的双端队列?

双端队列是双端队列,它是序列容器,在两端都提供扩展和收缩功能。队列数据结构允许用户仅在END插入数据,并从FRONT删除数据。让我们以在公交车站排队的类比为例,那里的人只能从END插入队列,而站在FRONT的人是第一个被移走的人,而在双头队列中,可以同时插入和删除数据结束。

什么是deque::erase()?

此功能用于在指定位置和范围内从容器中删除元素。此功能通过删除元素的数量来减少双端队列容器的大小。双端队列容器可有效地在双端队列容器的开头或末尾移除或插入元素。

语法

dequename.erase(Position)
dequename.erase( beginning position, ending position)

参数

它可以定义要从双端队列容器中删除的元素的位置,也可以是迭代器的形式,还可以定义要从容器中删除/擦除的指定范围。

示例

Input: 2 3 4 5 6 7 8
Output: 2 4 6 8
Input: 5 6 7 8 9 3 4 6
Output: 5 3 4 6

可以遵循的方法

  • 首先,我们初始化双端队列。

  • 然后我们打印双端队列。

  • 然后我们定义了delete()函数。

  • 然后我们在擦除操作后打印新的双端队列。

通过使用上述方法,我们可以消除双端队列中的元素。在定义擦除()函数时,我们指定要删除的元素的位置或指定要删除的元素的范围。

示例

// C++ code to demonstrate the working of deque.erase( ) function
#include<iostream.h>
#include<deque.h>
Using namespace std;
int main( ){
   //初始化双端队列
   deque<int> deque ={ 1 2 3 4 5 6 7 8 9 10 };
   cout<< “ Deque: “;
   for( auto x = deque.begin( ); x != deque.end( ); ++x)
      cout<< *x << “ “;
   //删除双端队列中的第五个元素
   deque.erase(deque.begin( ) + 4)
   //删除双端队列的前四个元素
   deque.erase(deque.begin( ), deque.begin( ) + 4)
   //打印新双端队列
   cout<< “ New deque:”;
   for( x = deque.begin( ) ; x >= deque.end( ); ++x)
      cout<< “ “ <<*x;
   return 0;
}

输出结果

如果我们运行上面的代码,那么它将生成以下输出

Input – Deque: 1 2 3 4 5 6 7 8 9 10
Output – New Deque: 6 7 8 9 10
 类似资料:
  • 主要内容:C# 强大的编程功能,C#发展史C# 的发音为“C Sharp”,是一门由微软开发并获得了 ECMA(欧洲计算机制造商协会)和 ISO(国际标准组织)批准的现代的、通用的、面向对象的编程语言。 C# 由 Anders Hejlsberg 及其团队在《 .Net Framework》的开发过程中开发,属于 .Net Framework 的一部分,可以用来编写 .Net 应用程序。C# 是专为 CLI (公共语言基础结构)设计的,C

  • 本文向大家介绍什么是C#中的多态性?,包括了什么是C#中的多态性?的使用技巧和注意事项,需要的朋友参考一下 多态可以是静态的也可以是动态的。在静态多态性中,对函数的响应是在编译时确定的。在动态多态中,它是在运行时决定的。 在静态多态性中,对函数的响应是在编译时确定的。在动态多态中,它是在运行时决定的。动态多态是我们所谓的后期绑定。 编译时多态或静态绑定 在编译期间将函数与对象链接的机制称为早期绑定

  • 本文向大家介绍什么是C#Asp.net Core中的Metapackage?,包括了什么是C#Asp.net Core中的Metapackage?的使用技巧和注意事项,需要的朋友参考一下 众所周知,Microsoft.AspNetCore软件包是添加到许多ASP.NET Core模板中的软件包之一。 当打开一个新的ASP.NET Core项目时,Microsoft.AspNetCore程序包将作为

  • 本文向大家介绍C和C++的区别是什么?相关面试题,主要包含被问及C和C++的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运

  • 问题内容: 我遵循了以下教程:http : //davidtsadler.com/archives/2012/06/03/how-to-install- magento-on-ubuntu/ 在某个时候,它告诉我执行以下命令: 这个命令做了什么,我该如何取消呢? 我重新启动了计算机,看来它仍在运行。我看了看和,但没有在里面找到它。 问题答案: 引用自: 您引用的命令会将heredoc中的文本(即,

  • 主要内容:文件流我们对文件的概念已经非常熟悉了,比如常见的 Word 文档、txt 文件、源文件等。文件是数据源的一种,最主要的作用是保存数据。 在操作系统中,为了统一对各种硬件的操作,简化接口,不同的硬件设备也都被看成一个文件。对这些文件的操作,等同于对磁盘上普通文件的操作。例如: 通常把显示器称为标准输出文件,printf 就是向这个文件输出数据; 通常把键盘称为标准输入文件,scanf 就是从这个文件读取数