在STL Set C ++程序中插入和删除

在本教程中,我们将讨论一个程序,以了解C ++中设置的STL中的插入和删除。

该集合是一个容器元素。使它唯一的属性是,它只能包含唯一元素,并且可以按排序的方式循环它们。

示例

插入

#include<iostream>

#include<set>

using namespace std;

int main(){

   set<int> st;

   //声明迭代器

   set<int>::iterator it = st.begin();

   set<int>::iterator it1, it2;

   pair< set<int>::iterator,bool> ptr;

   //插入单个元素

   ptr = st.insert(20);

   if (ptr.second)

      cout << "The element was newly inserted" ;

   else cout << "The element was already present" ;

      cout << "\nThe set elements after 1st insertion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   st.insert(it, 24);

   cout << "\nThe set elements after 2nd insertion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   int arr[3] = { 25, 24, 26 };

   st.insert(arr, arr+3);

   cout << "\nThe set elements after 3rd insertion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

}

输出结果

The element was newly inserted

The set elements after 1st insertion are : 20

The set elements after 2nd insertion are : 20 24

The set elements after 3rd insertion are : 20 24 25 26

删除中

#include<iostream>

#include<set>

using namespace std;

int main(){

   set<int> st;

   //声明迭代器

   set<int>::iterator it;

   set<int>::iterator it1;

   set<int>::iterator it2;

   pair< set<int>::iterator,bool> ptr;

   //在集合中插入值

   for (int i=1; i<10; i++)

      st.insert(i*5);

   cout << "The set elements after insertion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   it = st.begin();

   cout << endl;

   ++it;

   st.erase(it);

   //删除后打印设置元素

   cout << "The set elements after 1st deletion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   st.erase(40);

   cout << "\nThe set elements after 2nd deletion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   ++it;

   ++it;

   ++it;

   ++it;

   st.erase(it, st.end());

   cout << "\nThe set elements after 3rd deletion are : ";

   for (it1 = st.begin(); it1!=st.end(); ++it1)

      cout << *it1 << " ";

   cout << endl;

}

输出结果

The set elements after insertion are : 5 10 15 20 25 30 35 40 45

The set elements after 1st deletion are : 5 15 20 25 30 35 40 45

The set elements after 2nd deletion are : 5 15 20 25 30 35 45

The set elements after 3rd deletion are : 5 15 20

以上是 在STL Set C ++程序中插入和删除 的全部内容, 来源链接: utcz.com/z/331276.html

回到顶部