![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++STL
freeygh
这个作者很懒,什么都没留下…
展开
-
C++STL容器set/multiset
unordered_map和mapunordered_map存储机制是哈希表,,即unordered_map内部元素是无序的。map是红黑树,map中的元素是按照二叉搜索树存储,进行中序遍历会得到有序遍历。unordered_set和setunordered_set基于哈希表,是无序的。set实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排...原创 2019-06-08 21:48:08 · 132 阅读 · 0 评论 -
C++ 标准库容器list基本结构及其用法
list就是链表,在C语言中我们想使用链表都是自己去实现的,实现起来倒不难,但是如果有现成的高效的链表可以使用的话,我们就不需要重复造轮子了。STL就提供了list容器给我们。list是一个双向链表,而单链表对应的容器则是foward_list。list即双向链表的优点是插入和删除元素都比较快捷,缺点是不能随机访问元素。初始化方式就大同小异了,跟vector基本一样。要想用list先加...原创 2019-04-24 15:33:18 · 393 阅读 · 0 评论 -
C++ STL 容器
本系列博客计划每天抽时间对C++ 标准库STL中的容器进行总结归纳。容器分为:序列式容器和关联式容器。 容器 底层数据结构 时间复杂度 有无序 可不可重复 其他 array 数组 随机读改 O(1) ...原创 2019-04-02 17:20:22 · 150 阅读 · 0 评论 -
C++ 标准库类型string的初始化以及基本操作
标准库类型string表示可变长的字符序列,使用string类型必须首先包含string头文件。作为标准库的一部分,string定义在命名空间std中。#include<string>using namespace std; //或者using std::string;1.定义和初始化string对象//初始化string对象的方式string s1; ...原创 2019-03-24 16:07:58 · 1736 阅读 · 0 评论 -
C++ 标准库类型vector的初始化以及基本操作
标准库类型vector表示对象的集合,其中所有对象的类型都相同。集合中的每个对象都有一个与之对应的索引,索引用于访问对象。因为vector“容纳着”其他对象,所以它也常被称作容器(container).要使用vector,必须包含适当的头文件。#include<vector>using std::vectorC++语言既有类模板(class template),也有函数模板...原创 2019-03-24 21:26:39 · 788 阅读 · 0 评论 -
C++ STL容器之栈stack
c++stack(堆栈)是一个容器的改编,它实现了一个先进后出的数据结构(FILO)使用该容器时需要包含#include<stack>头文件;定义stack对象的示例代码如下:stack<int> s1;stack<string> s2;stack的基本操作有:1.入栈:如s.push(x);2.出栈:如 s.pop().注意:出栈操作...原创 2019-04-06 12:11:19 · 629 阅读 · 0 评论 -
C++ STL中map哈希表 hash_map介绍
0 为什么需要hash_map用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改:岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高...转载 2019-04-05 00:07:34 · 551 阅读 · 2 评论 -
C++中virtual虚函数的用法
在面向对象的C++语言中,虚函数(virtualfunction)是一个非常重要的概念。什么是虚函数: 虚函数是指一个类中你希望重载的成员函数 ,当你用一个 基类指针或引用 指向一个继承类对象的时候,调用一个虚函数时, 实际调用的是继承类的版本。 ——摘自MSDN#include <iostream>using namespace std;class Pa...转载 2019-07-20 12:11:52 · 109 阅读 · 0 评论