random_shuffle 自 C++14 起被弃用,C++17 起被移除。

在 C++11 以及更新的标准中,您可以使用 shuffle 函数代替原来的 random_shuffle。使用方法为 shuffle(v.begin() v.end() rng)(最后一个参数传入的是使用的随机数生成器,一般情况使用以真随机数生成器 random_device 播种的梅森旋转伪随机数生成器 mt19937)。

lower_bound:在一个有序序列中进行二分查找,返回指向第一个 大于等于 的元素的位置的迭代器。如果不存在这样的元素,则返回尾迭代器。lower_bound(v.begin()v.end()x)。

upper_bound:在一个有序序列中进行二分查找,返回指向第一个 大于 的元素的位置的迭代器。如果不存在这样的元素,则返回尾迭代器。upper_bound(v.begin()v.end()x)。