摘要: priority_queue 容器适配器模拟的也是队列这种存储结构,即使用此容器适配器存储元素只能“从一端进(称为队尾),从另一端出(称为队头)”,且每次只能访问 priority_queue 中位于队头的元素。但是,priority_queue 容器适配器中元素的存和取,遵循的并不是 “First 阅读全文
posted @ 2021-09-04 10:04 默行于世 阅读(329) 评论(0) 推荐(0) 编辑
摘要: queue 容器适配器有 2 个开口,其中一个开口专门用来输入数据,另一个专门用来输出数据。 这种存储结构最大的特点是,最先进入 queue 的元素,也可以最先从 queue 中出来,即用此容器适配器存储数据具有“先进先出(简称 "FIFO" )”的特点,因此 queue 又称为队列适配器。 que 阅读全文
posted @ 2021-09-04 09:44 默行于世 阅读(87) 评论(0) 推荐(0) 编辑
摘要: stack 栈适配器是一种单端开口的容器,实际上该容器模拟的就是栈存储结构,即无论是向里存数据还是从中取数据,都只能从这一个开口实现操作。 stack 适配器的开头端通常称为栈顶。由于数据的存和取只能从栈顶处进行操作,因此对于存取数据,stack 适配器有这样的特性,即每次只能访问适配器中位于最顶端 阅读全文
posted @ 2021-09-04 09:22 默行于世 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 虽然每种无序容器都指定了默认的 hash<key> 哈希函数和 equal_to<key> 比较规则,但它们仅适用于存储基本类型(比如 int、double、float、string 等)数据的无序容器。换句话说,如果无序容器存储的数据类型为自定义的结构体或类,则 STL 标准库提供的 hash<k 阅读全文
posted @ 2021-09-03 21:18 默行于世 阅读(801) 评论(0) 推荐(1) 编辑
摘要: unordered_multiset 容器大部分的特性都和 unordered_set 容器相同,包括: unordered_multiset 不以键值对的形式存储数据,而是直接存储数据的值; 该类型容器底层采用的也是哈希表存储结构,它不会对内部存储的数据进行排序; unordered_multis 阅读全文
posted @ 2021-09-03 21:11 默行于世 阅读(89) 评论(0) 推荐(0) 编辑
摘要: unordered_set 容器,可直译为“无序 set 容器”,即 unordered_set 容器和 set 容器很像,唯一的区别就在于 set 容器会自行对存储的数据进行排序,而 unordered_set 容器不会。总的来说,unordered_set 容器具有以下几个特性: 不再以键值对的 阅读全文
posted @ 2021-09-03 20:59 默行于世 阅读(230) 评论(0) 推荐(0) 编辑
摘要: C++ STL 标准库中,除了提供有 unordered_map 无序关联容器,还提供有和 unordered_map 容器非常相似的 unordered_multimap 无序关联容器。和 unordered_map 容器一样,unordered_multimap 容器也以键值对的形式存储数据,且 阅读全文
posted @ 2021-09-03 20:49 默行于世 阅读(718) 评论(0) 推荐(0) 编辑
摘要: unordered_map 容器,直译过来就是"无序 map 容器"的意思。所谓“无序”,指的是 unordered_map 容器不会像 map 容器那样对存储的数据进行排序。换句话说,unordered_map 容器和 map 容器仅有一点不同,即 map 容器中存储的数据是有序的,而 unord 阅读全文
posted @ 2021-09-03 20:38 默行于世 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 自定义容器排序规则 1) 使用函数对象自定义排序规则 不知道函数对象是什么请浏览C++ 函数对象(仿函数) 无论关联式容器中存储的是基础类型(如 int、double、float 等)数据,还是自定义的结构体变量或类对象(包括 string 类),都可以使用函数对象的方式为该容器自定义排序规则。下面 阅读全文
posted @ 2021-09-03 20:17 默行于世 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 如果一个类将()运算符重载为成员函数,这个类就称为函数对象类,这个类的对象就是函数对象。函数对象是一个对象,但是使用的形式看起来像函数调用,实际上也执行了函数调用,因而得名。下面是一个函数对象的例子。 #include <iostream> using namespace std; class CA 阅读全文
posted @ 2021-09-03 20:03 默行于世 阅读(198) 评论(0) 推荐(0) 编辑