C++二叉搜索树容器set的调用

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<algorithm>
#include<stack>
#include<queue>
#include<vector>
#include<set>
using namespace std;


set<int> s;    //左小右大存放元素 


int main()
{
//插入元素 
s.insert(1);
s.insert(3);
s.insert(5);

//查找元素 
set<int>::iterator ite;

ite=s.find(1);
if(ite==s.end()) puts("not find");
else puts("find"); 

ite=s.find(2);
if(ite==s.end()) puts("not find");
else puts("find");

//删除元素
s.erase(3);

//其他的查找元素的方法
if(s.count(3) != 0)   puts("find");
else puts("not find");

//遍历所有元素
for(ite = s.begin(); ite != s.end(); ite++) 
{
cout<<*ite<<endl;
}

return 0;
}


更新排序

#include<iostream>  
#include<cstdio>  
#include<set>  
using namespace std;  
  
struct Node  
{  
    int val,cou;  
    Node(int val,int cou):val(val), cou(cou)  
    {  
}  
/*
    bool operator < (const Node &a) const //重载来进行排序   
    {  
        return (cou!=a.cou)?cou>a.cou : val<a.val; //小升 大降   
    }   */
};  

bool operator < (Node a, Node b) //重载来进行排序  和优先队列一样 
{
	return (a.cou!=b.cou)?a.cou>b.cou : a.val<b.val; //小升 大降 
}
  
set<Node> sst;  
set<Node>::iterator ite;  
  
int main()  
{  
    Node n1=Node(10,11);  
    sst.insert(n1);  
    n1= Node(99,11);  
    sst.insert(n1);  
    n1= Node(44,44);  
    sst.insert(n1);  
      
    for(ite=sst.begin(); ite!=sst.end(); ite++)  
    {  
        cout<<ite->val<<" "<<ite->cou<<endl;  
    }  
    return 0;  
}  


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值