
STL
文章平均质量分 70
笨蛋程序员
这个作者很懒,什么都没留下…
展开
-
C++11 unordered_map
unordered_map 在头文件 <unordered_map> 中定义,它是一个包含键-值对的关联容器(键是唯一的)。其内部存储没有特定的顺序,值是根据键的哈希值进行存储,计算哈希值的速度是很快的,因此查找、插入、删除都是常数时间。#include <unordered_map>初始化unordered_map<int, int> u = {{2, 4}, {4, 16}};在尖括号中给出键和值的数据类型,这里都是整型,利用列表的形式可以初始化。插入修原创 2022-03-01 11:42:03 · 1231 阅读 · 0 评论 -
C++ STL 优先队列priority_queue简述
本文主要简单介绍优先队列的原理和实现,便于快速学习和查阅。原理优先队列和队列一样,只能从队尾插入元素,从队首删除元素。 优先队列中最大元素始终位于队首,所以,出队时并非按照先进先出的原则,而是将当前队列中最大的元素出队。 可以重载”<”操作,重新定义比较规则。实现头文件 优先队列头文件与队列头文件一样,使用优先队列时别忘了加上queue 的头文件。#includ...原创 2018-02-09 14:55:43 · 445 阅读 · 0 评论 -
C++ 队列 queue 用法简述
本篇文章主要简介队列的原理以及实现,便于学习和查阅。队列的原理queue 队列容器是一个先进先出(First In First Out,FIFO)的线性存储表,元素的插入只能在队尾,元素的删除只能在队首,如图是一个队列容器数据结构示意图。 队列的实现1.头文件#include用队列时记得要写上这个头文件。2.定义queue name;Data_ty原创 2018-02-05 15:04:17 · 5590 阅读 · 1 评论 -
C++ 栈 stack 用法简述
栈的原理比较简单易懂,而且相关的资料博客很多。在这里,就不过多详细介绍栈。本篇文章主要简述栈的基本原理和实现,便于学习和查阅。栈的原理简述栈仅允许在一端进行插入(push)和删除(pop)运算。这一端被称为栈顶,相对地,把另一端称为栈底。 插入:向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素; 删除:从一个栈删除元素又称作出栈或退栈,原创 2018-02-05 14:20:18 · 1948 阅读 · 0 评论 -
C++ STL 集合set
本文主要简述集合的原理和实现,便于快速学习和查阅。集合的原理set集合容器实现了红黑树(Red-Black Tree)的平衡二叉检索树的数据结构,在插入元素时,它会自动调整二叉树的排列,把该元素放到适当的位置,以确保每个子树根节点的键值大于左子树所有节点的键值,而小于右子树所有节点的键值。 另外,还得确保根节点左子树的高度与右子树的高度相等,这样,二叉树的高度最小,从而检索速度最快。 ...原创 2018-02-10 17:44:35 · 9223 阅读 · 1 评论 -
C++ STL 映射map
本文主要简单介绍映射(map)的原理和实现,便于学习和查阅。映射的原理map 映照容器的元素数据是由一个键值和一个映照数据组成的,键值与映照数据之间具有一一映照的关系。 map 映照容器的数据结构也是采用红黑树来实现的,插入元素的键值不允许重复,比较函数只对元素的键值进行比较,元素的各项数据可通过键值检索出来。由于map 与set采用的都是红黑树的数据结构,所以,用法基本相似。图是map...原创 2018-02-10 18:21:00 · 580 阅读 · 0 评论 -
C++ 向量 vector 用法简述
C++ 模板容器向量 vector,本问介绍 vector 的使用。原创 2019-03-12 13:50:17 · 1115 阅读 · 0 评论 -
C++ 字符串 string 用法简述
C++ STL 字符串string类库string声明 初始化赋值 拼接 比较原创 2019-03-12 14:37:07 · 1009 阅读 · 0 评论