priority_queue 的使用(C++)

能够完成下列操作的数据结构叫作:priority_queue ,即优先队列。

  • 插入一个数值
  • 去除最小(大)的数值(获得数值,并且删除)

lower_bound()和upper_bound()的使用

函数 lower_bound()firstlast 中的前闭后开区间进行二分查找,返回不小于 val 的第一个元素位置,如果所有元素都小于 val,则返回 last 位置。

最小生成树

给定一个无向图,如果它的某个子图中任意两个顶点都互相连通并且是一棵树,这棵树就叫做生成树,如果边上有权值,那么使得边权的生成树叫作最小生成树(MST)。

并查集

并查集是什么

并查集是一种用来管理元素分组情况的数据结构。并查集可以高效地进行如下操作:

  • 查询元素 a 和元素 b 是否属于同一组。
  • 合并元素 a 和元素 b 所在的组。

最短路径问题

最短路径即给定两个顶点,在一这两个点为起点和终点的路径中,边的权值和最小的路径。

C++ priority_queue 学习笔记

本文整理自:https://zh.cppreference.com/w/cpp/container/priority_queue

priority_queue 是容器适配器,它提供常数时间的(默认)最大元素查找,对数的插入与释出。可用用户提供的 Compare 更改顺序,例如,用 std::greater<T> 将导致最小元素作为 top() 出现。定义于头文件<queue>

C++ map 学习笔记

内容来源:https://zh.cppreference.com/w/cpp/container/map

C++ pair 学习笔记

本文整理自 https://zh.cppreference.com/w/cpp/utility/pair

C++ list 容器学习笔记

本文整理自 https://zh.cppreference.com/w/cpp/container/list

std::list 是支持常数时间从容器任何位置插入和移除元素的容器。不支持快速随机访问。它通常实现为双向链表。与 std::forward_list 相比,此容器提供双向迭代但在空间上效率稍低。

要使用 list 类,要包含头文件 list:#include <list>

接下来我们来熟悉 Vector 类的常用成员函数:

C++ vector 容器学习笔记

本文整理自 http://www.cplusplus.com/reference/vector/vector/

Vector 是 C++ 中十分重要的一个容器类型。 官方文档给出的定义是: Vectors are sequence containers representing arrays that can change in size. 即可以改变大小的数组的序列容器。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×