第11章 set集合容器

/*

第11章 set集合容器
   11.1 set技术原理
   11.2 set应用基础
   11.3 本章小结

*/



//第11章 set集合容器
//   11.1 set技术原理 ---------------------------------------------------------------------------------------------------

//   11.2 set应用基础 ---------------------------------------------------------------------------------------------------


//184 中序遍历
#include <set>
#include <iostream>
int main(void)
{
  using namespace std;
  set < int > s;
  s.insert(10);
  s.insert(15);
  s.insert(11);
  s.insert(17);
  s.insert(13);
  s.insert(19);
  s.insert(19); //不会重复插入
  //打印二叉树的数据
  set < int > ::iterator i, iend;
  iend = s.end();
  for(i = s.begin(); i != iend; i++)
    cout <<  *i << ' ';
  cout << endl;
  return 0;
}


// 185 reverse_iterator
#include <set>
#include <iostream>
int main(void)
{
  using namespace std;
  set < int > s;
  s.insert(10);
  s.insert(15);
  s.insert(11);
  s.insert(17);
  s.insert(13);
  s.insert(19);
  s.insert(19); //不会重复插入
  //打印二叉树的数据
  set < int > ::reverse_iterator ri, riend;
  riend = s.rend();
  for(ri = s.rbegin(); ri != riend; ri++)
    cout <<  *ri << ' ';
  cout << endl;
  return 0;
}


// 185 , find
#include <set>
#include <iostream>
int main(void)
{
  using namespace std;
  set < int > s;
  s.insert(10);
  s.insert(15);
  s.insert(11);
  s.insert(17);
  s.insert(13);
  s.insert(19);
  //搜索元素13
  int v = 13;
  set < int > ::iterator i_v = s.find(v);
  cout <<  *i_v << endl;
  //搜索不存在的元素60
  v = 60;
  i_v = s.find(v);
  if(i_v != s.end())
    cout <<  *i_v << endl;
  return 0;
}


// 186
#include <set>
#include <iostream>
int main(void)
{
  using namespace std;
  set < int > s;
  s.insert(5);
  s.insert(6);
  s.insert(7);
  s.insert(8);
  s.insert(9);
  //
  if(s.empty())
    cout << "set容器为空" << endl;
  else
    cout << "set容器元素个数为" << s.size() << endl;
  return 0;
}


//   11.3 本章小结 ---------------------------------------------------------------------------------------------------

TOP

原文地址:https://www.cnblogs.com/xin-le/p/4111311.html