C ++ STL中的multimap lower_bound()函数

在本文中,我们将讨论C ++ STL中multimap::lower_bound()函数的工作,语法和示例。

什么是C ++ STL中的Multimap?

多图是关联容器,类似于图容器。它还有助于按特定顺序存储由键值和映射值的组合形成的元素。在多图容器中,可以有多个与同一键关联的元素。始终在内部借助关联的键对数据进行排序。

什么是multimap::lower_bound()?

multimap::lower_bound()函数是C ++ STL中的内置函数,在<map>头文件中定义。lower_bound()将迭代器返回到多图容器的下限。该函数返回一个迭代器,该迭代器指向被认为在键k之前的第一个元素。

语法

multi.lower_bound(key& k);

参数

此函数仅接受1参数-

  • k-我们要搜索的键。

返回值

该函数返回迭代器,该迭代器指向键“ k”的第一个元素,该元素被认为位于键k之前。

输入值 

multimap<char, int> newmap;
multimap<char, int > newmap;
newmap.insert(make_pair(‘a’, 1));
newmap.insert(make_pair(‘b’, 2));
newmap.insert(make_pair(‘c’, 3));
newmap.lower_bound(b);

输出结果 

a:1

示例

#include <bits/stdc++.h>
using namespace std;
int main(){
   //创建一个多图
   multimap<int, int> mul;
   mul.insert({ 2, 10 });
   mul.insert({ 1, 20 });
   mul.insert({ 1, 30 });
   mul.insert({ 3, 40 });
   mul.insert({ 3, 50 });
   mul.insert({ 4, 60 });
   //1的下限
   auto i = mul.lower_bound(1);
   cout << "Lower bound of key 1 is: ";
   cout << (*i).first << " " << (*i).second << endl;
   //下界2-
   i = mul.lower_bound(2);
   cout << "Lower bound of key 2 is: ";
   cout << (*i).first <<" "<<(*i).second << endl;
   //下限3-
   i = mul.lower_bound(3);
   cout << "Lower bound of key 3 is: ";
   cout << (*i).first << " " << (*i).second << endl;
   return 0;
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

Lower bound of key 1 is: 1 20
Lower bound of key 2 is: 2 10
Lower bound of key 3 is: 3 40