C++ 中 Vector 和 List 的区别2024 年 8 月 28 日 | 阅读 6 分钟 在本文中,您将学习 C++ 中 Vector 和 List 的区别。但在讨论区别之前,您必须了解 Vector 和 List。 C++ 中的 Vector 是什么?在 C++ 中,vector 是一个类似动态数组的容器,可以存储相同数据类型的元素的集合。与数组不同,vector 可以在运行时增长或缩小。Vector 是 C++ Standard Template Library (STL) 的一部分,包含在 <vector> 头文件中。 C++ 中 vector 的一些用途
语法声明 vector 的基本语法 我们还可以通过将整数参数传递给相应的构造函数来指定 vector 的初始大小 C++ 中的 List 是什么?在 C++ 中,list 是一个容器,它存储元素的集合,类似于 vector 或 array。但是,与 vector 和 array 不同,list 实现为 双向链表,其中每个元素都链接到列表中的前一个和后一个元素。它允许在列表的任何位置高效地插入和删除元素,但代价是与 vector 或 array 相比,随机访问元素的速度较慢。List 高效地分配内存,因为每个元素都存储为一个单独的节点,并且可以动态调整大小而无需连续内存分配。 Vector 和 List 之间的关键区别Vector 和 list 都是容器类,允许用户存储元素的集合,它们之间存在一些区别,如下所示
示例演示 vector 和 list 之间差异的基本 C++ 代码片段 输出 Time taken by vector for insertion: 33ms Time taken by list for insertion: 131ms Time taken by vector for random access: 0ms Time taken by list for random access: 3163ms Time taken by vector for sorting: 346ms Time taken by list for sorting: 704ms 说明 此代码创建一个 vector 和一个 list,并使用 push_back() 将 100 万个元素 插入到每个容器中。之后,它在每个容器中随机访问 1000 个元素,并测量每个操作所花费的时间。最后,它使用 sort() 函数 对 vector 中的元素进行排序,并使用 sort() 成员函数 对 list 中的元素进行排序,并测量每个操作所花费的时间。 此代码的结果将取决于执行它的特定机器和环境,但总的来说,它应该能够说明 vector 和 list 在不同类型操作下的性能差异。 |
在本教程中,我们将学习如何确定两个浮点数的余数。示例:输入:a = 9.7, b = 2.3 输出:0.5 输入:a = 36.5, b = 5.0 输出:1.5 C 程序:#include <stdio.h> #include <math.h> int main() { int x = 10; int...
阅读1分钟
在本文中,您将学习如何在 C++ 中将字符串分割成 N 个相等的部分。字符串操作和基本算术用于 C++ 程序中将字符串分割成 N 个相等的部分。1. 输入:程序开始时需要两个用户输入……
阅读 4 分钟
在本文中,我们将探讨 C++ 中 list::emplace_front() 和 list::emplace_back() 函数的结构、语法和区别。但在讨论它们的区别之前,我们必须了解 List。什么是 STL 中的 List?List 是一种数据结构,它允许恒定的...
阅读 2 分钟
在本文中,我们将通过几种情况讨论 C++ 中的乘法表程序。情况 1:从用户那里获取一个数字作为输入,并打印该数字的乘法表。C++ 程序:#include<iostream> using namespace std; int main(){ int number; cout<< "Enter the...
阅读 4 分钟
在本文中,您将通过其语法和示例了解 C++ 中的 std::regex_iterator。什么是 std::regex_iterator?C++ 标准库类 std::regex_iterator 表示用于在匹配正则表达式的字符串序列上分页的迭代器。它是常规...的一部分。
阅读 3 分钟
在 C++ 中,多线程是一种强大的技术,程序被分解为称为线程的执行单元。多线程允许 CPU 或多核处理器的单个核心同时运行多个线程。C++ 中的编程使应用程序能够...
阅读 12 分钟
计算机程序中的浮点运算通常涉及可能导致不准确性和异常情况的近似值。当执行敏感的数值计算时,这些异常可能导致不希望的程序终止或不正确的输出。C++ 编程语言提供了处理这些浮点异常的机制和用于...
阅读 6 分钟
在 C 或 C++ 等编程语言中,我们声明任何变量,并在编译时显式声明变量的数据类型。但类型推断意味着我们使用一些关键字,通过这些关键字我们无需声明变量的数据类型...
阅读 4 分钟
树是计算机科学中一种常见的分层数据结构,用于表示分层关系或组织。每个节点都可以有一个父节点和零个或多个子节点,它们都通过边连接。考虑到它们的适应性和广泛的用途,树可能...
阅读9分钟
在这种情况下,我们将讨论使用动态构造函数来初始化对象。“对象的动态初始化”是指在运行时初始化对象,或在那时为其赋予初始值。这可以通过使用构造函数并为它们提供参数来完成。它是...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India