21xrx.com
2024-12-27 05:25:05 Friday
登录
文章检索 我的文章 写文章
C++ map的lower_bound函数
2023-07-12 00:43:07 深夜i     --     --
C++ map lower_bound函数

C++中的map是一种关联容器,它可以将键映射到值。在map中,键和值都是有序的,这使得map在许多应用程序中非常有用。

lower_bound是C++ map中一个非常有用的函数,它可以在map中查找第一个大于或等于给定键的元素。该函数返回一个迭代器,指向map中第一个大于或等于给定键的元素。如果找不到这样的元素,则返回map.end()。

lower_bound函数的语法如下:


iterator map_name.lower_bound(const key_type& key) const;

其中,map_name是map的名称,key_type是键的类型。

了解了lower_bound函数的基本语法,我们来看一个例子。


#include <iostream>

#include <map>

using namespace std;

int main() {

  map<int, string> my_map;

  my_map[1] = "one";

  my_map[2] = "two";

  my_map[3] = "three";

  my_map[4] = "four";

  my_map[5] = "five";

  

  int key = 3;

  map<int, string>::iterator lower_iterator = my_map.lower_bound(key);

  if(lower_iterator != my_map.end())

    cout << "The lower bound of " << key << " is " << lower_iterator->second << "." << endl;

   else

    cout << "The lower bound of " << key << " is not found." << endl;

  

  

  return 0;

}

在上面的代码中,我们创建了一个名为my_map的map,并向其中添加了一些键值对。然后,我们定义一个名为key的变量,并将其值设置为3。

接下来,我们使用lower_bound函数查找map中第一个大于或等于键3的元素,并将其迭代器存储在名为lower_iterator的变量中。

最后,我们检查lower_iterator是否等于map.end(),如果不是,则说明我们已经找到了一个符合条件的元素,输出其值即可。

通过上面的例子,我们可以看到lower_bound函数在map中查找元素非常方便,特别是当我们需要找到大于或等于给定键的元素时,这个函数将非常有用。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复