当前位置:   article > 正文

C++常用数据结构使用总结_数据结构c++的使用

数据结构c++的使用

目录

set操作

set是一种关联式容器,其特性如下:

  • set以RBTree作为底层容器
  • 所得元素的只有key没有value,value就是key
  • 不允许出现键值重复
  • 所有的元素都会被自动排序
  • 不能通过迭代器来改变set的值,因为set的值就是键
unordered_set代表是无序的,
set<int> numSet;
    for(int i=0;i<6;i++)
    {
        //2.1insert into set
        numSet.insert(numList[i]);
    }
    //2.travese set
    for(set<int>::iterator it=numSet.begin() ;it!=numSet.end();it++)
    {
        cout<<*it<<" occurs "<<endl;
    }
    //3.set find useage

    int findNum=1;
    if(numSet.find(findNum)!=numSet.end())
    {
        cout<<"find num "<<findNum<<" in set"<<endl;
    }else{
        cout<<"do not find num in set"<<findNum<<endl;
    }
    //set delete useage
    int eraseReturn=numSet.erase(1);
    if(1==eraseReturn)
    {
          cout<<"erase num 1 success"<<endl;
    }else{
        cout<<"erase failed,erase num not in set"<<endl;
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

bitset

https://blog.csdn.net/lanchunhui/article/details/49644373

bitset的操作
成员函数	函数功能
bs.any()	是否存在值为1的二进制位
bs.none()	是否不存在值为1的二进制位
或者说是否全部位为0
bs.size()	位长,也即是非模板参数值
bs.count()	值为1的个数
bs.test(pos)	测试pos处的二进制位是否为1
与0做或运算
bs.set()	全部位置1
bs.set(pos)	pos位处的二进制位置1
与1做或运算
bs.reset()	全部位置0
bs.reset(pos)	pos位处的二进制位置0
与0做或运算
bs.flip()	全部位逐位取反
bs.flip(pos)	pos处的二进制位取反
bs.to_ulong()	将二进制转换为unsigned long输出
bs.to_string()	将二进制转换为字符串输出
~bs	按位取反
效果等效为bs.flip()
os << b	将二进制位输出到os流
小值在右,大值在左
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

字符串操作


                
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/960224
推荐阅读
相关标签
  

闽ICP备14008679号