【发布时间】:2023-03-26 19:08:01
【问题描述】:
我试图在 std::map 中找到最大值,这将是树中的最后一个节点(因为 std::map 键已排序)。
Cppref 说std::map.end() 是常数时间。但是要得到最大的key,我必须得到这个迭代器的前一个值,即*std::prev(std::map.end())。
该操作的时间复杂度是多少?
我知道这应该相当于--std::map.end(),但我也不知道该操作的成本。
【问题讨论】:
-
试试
std::map::rbegin()。 -
@PaulMcKenzie 试试答案部分:P
-
被太多答案打败了。哦,好吧。
-
嗯@PaulMcKenzie 我回答了您发表评论的时间!我先回答,所以你可以做到! ;) 下一次,使用答案部分。 :)
标签: c++ data-structures stl std