C++常用数据结构入门

Posted Jason_Lee155

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++常用数据结构入门相关的知识,希望对你有一定的参考价值。

前言

所有的容器归根到底都是内存空间的排列方式和在空间上施加各种各种不同的限制所得的。

空间排列方式只有线性和链式两种方式,链式是通过记录每一个数据的地址来实现查找下一位数据的。而每一个容器所具有的特性就决定了它所适用的情况,总的来看容器常用的无非是增删改查操作,下面将从适用场景、常用操作来进行总结。

array数组

内存空间为连续的一段地址,适用于提前已知所要存储的数据类型和数量、进行大量的查、改操作,不适用于含有大量交换、删除、增加数据的操作,该容器无法动态改变大小,所以说提前已知存储数据类型和数量。图片介绍了数组的初始化、赋值、遍历、获取大小、获取特定位置数据的方法。

 queue队列

该容器内存结构最好为链式结构,最知名的特点是先进先出,能动态调整大小,适用于包含大量增、删操作的情况,但不适用于含有大量查找操作的数据。图片介绍了队列初始化、赋值、弹出操作。

stack 栈

栈在内存上可为连续或者链式,于队列相反的是它为先进后出,适用于压栈出栈操作,如可用于图的遍历、递归函数的改写等,图片介绍了栈的创始化、压栈、出栈等操作。

list 链表

链表在内存结构上为链式结构,也就决定它可以动态增加,适用于包含大量增加、删除的应用,但不适用于包含大量查询的操作,图片介绍了链表的创建、添加数据、删除数据、获取数据等操作。

map

map为关联式容器,提供一对一服务,每个关键字在容器中只能出现一次,适用于一对一服务。

set 集合

set集合最大的特点是里面的元素按序排列不重复,图片演示集合初始化、插入、删除、查找等操作。

vector向量

vector向量和array不同,它可以根据数据的大小而进行自动调整,图片仅展示初始化、插入、删除等操作。

 实际应用时,还有很多变通。到时候再搜吧

以上是关于C++常用数据结构入门的主要内容,如果未能解决你的问题,请参考以下文章

C++ STL常用标准库容器入门(vector,map,set,string,list...)

[C++]C++入门到入土篇 HelloWorld 解析 && C++入门

redis使用入门

C++入门教程||C++ 基本的输入输出||C++ 数据结构

开发成长之路(10)-- C++从入门到开发(C++知名库:STL入门·算法)

开发成长之路(10)-- C++从入门到开发(C++知名库:STL入门·算法)