STL相关的一点小东西

multiset
/平衡二叉树插入查找删除数据
复杂度为log n
/
#include<stdio.h>
#include
#include
#include
using namespace std;
int main(){
multiset st;//定义一个multiset的变量,里面数据能自动排序
int a[7]={26,3,13,2,53,23,343};
int i;
for(i=0;i<7;i++){ //将a[]中元素内容给st
st.insert(a[i]);
}
multiset::iterator p; //遍历用的迭代器,类似于指针
for(p=st.begin();p!=st.end();p++){ //st.begin指向头元素
//st.end指向最后一个元素的后面
printf("%d “,*p); //读内容
}
printf(”\n");
multiset::iterator j; //用于查找
j=st.find(20); //查找某数,返回为迭代器
if(j==st.end()) printf(“no num\n”);
else printf("%d\n",*j);

st.insert(20);            //插入 
for(p=st.begin();p!=st.end();p++){  //st.begin指向头元素
                                    //st.end指向最后一个元素的后面 
	printf("%d ",*p);               //读内容 
}
printf("\n");

st.erase(13);        //删除
for(p=st.begin();p!=st.end();p++){  //st.begin指向头元素
                                    //st.end指向最后一个元素的后面 
 	printf("%d ",*p);               //读内容 
}
return 0;

}

发布了22 篇原创文章 · 获赞 1 · 访问量 1068

猜你喜欢

转载自blog.csdn.net/Doro_/article/details/94628998