set :: insert是C++ STL中的内置函数,可在集合容器中插入元素,或将元素从集合中的位置插入到另一个位置到另一个集合。
- 句法:
iterator set_name.insert(element)
参数:该函数接受要插入到设置容器中的强制性参数元素。
返回值:该函数返回一个迭代器,该迭代器指向容器中插入的元素。
时间复杂度:log(N)其中“ N”是集合中元素的数量
下面的程序说明了上述函数:
CPP
// CPP program to demonstrate the
// set::insert(element) function
#include
using namespace std;
int main()
{
set s;
// Function to insert elements
// in the set container
s.insert(1);
s.insert(4);
s.insert(2);
s.insert(5);
s.insert(3);
cout << "The elements in set are: ";
for (auto it = s.begin(); it != s.end(); it++)
cout << *it << " ";
return 0;
}
CPP
// CPP program to demonstrate the
// set::insert(iterator1, iterator2) function
#include
using namespace std;
int main()
{
set s1;
// Function to insert elements
// in the set container
s1.insert(1);
s1.insert(4);
s1.insert(2);
s1.insert(5);
s1.insert(3);
cout << "The elements in set1 are: ";
for (auto it = s1.begin(); it != s1.end(); it++)
cout << *it << " ";
set s2;
// Function to insert one set to another
// all elements from where 3 is to end is
// inserted to set2
s2.insert(s1.find(3), s1.end());
cout << "\nThe elements in set2 are: ";
for (auto it = s2.begin(); it != s2.end(); it++)
cout << *it << " ";
return 0;
}
输出:
The elements in set are: 1 2 3 4 5
- 句法:
iterator set_name.insert(iterator position, element)
参数:该函数接受两个参数,如下所述:
- element:它指定要插入到集合容器中的元素。
- position:不指定要插入的位置,它仅指向要开始搜索操作以插入的位置,以加快处理速度。插入是根据设置的容器遵循的顺序完成的。
- 句法:
void set_name.insert(iterator position1, iterator position2)
参数:该函数接受两个参数position1和position2 ,它们指定元素的范围。范围[position1,last)范围内的所有元素都插入到另一个set容器中。
返回值:无返回类型=>无效。
下面的程序说明了上述函数:
CPP
// CPP program to demonstrate the
// set::insert(iterator1, iterator2) function
#include
using namespace std;
int main()
{
set s1;
// Function to insert elements
// in the set container
s1.insert(1);
s1.insert(4);
s1.insert(2);
s1.insert(5);
s1.insert(3);
cout << "The elements in set1 are: ";
for (auto it = s1.begin(); it != s1.end(); it++)
cout << *it << " ";
set s2;
// Function to insert one set to another
// all elements from where 3 is to end is
// inserted to set2
s2.insert(s1.find(3), s1.end());
cout << "\nThe elements in set2 are: ";
for (auto it = s2.begin(); it != s2.end(); it++)
cout << *it << " ";
return 0;
}
输出:
The elements in set1 are: 1 2 3 4 5
The elements in set2 are: 3 4 5
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。