STL-set学习笔记

set本质是平衡数,插入的数会自动排序并去重

  1. 插入
s.insert(1)
  1. 删除

<1> erase(id) 删除指针id指向的数

<2> erase(lid,rid) 删除lid到rid所指向区间的数,且该区间为前闭后开区间

<3> erase(val) 删除值val

  1. 遍历

set的遍历涉及指针,其数据类型为 set<int>::iterator,因为是指针,所以只能判不等

遍历区间[lid,rid]:

rid++;
while(lid!=rid)
{
  ……
  lid++;
}
  1. 二分查找

<1> lower_bound(val) 第一个大于等于val的数的地址

<2> upper_bound(val) 第一个大于val的数的地址

因为是地址,所以只能用指针记录

如果所有数都比val小,就返回end(),如果所有数都比val大,就返回begin()

posted @   wangsiqi2010916  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示