deque::insert(函數是C++中的內置函數,用於在雙端隊列中插入元素。
insert()函數可以通過三種方式使用:
- 通過在一個位置插入新元素val來擴展雙端隊列。
- 通過在雙端隊列中插入n個新值val來擴展雙端隊列。
- 通過在[first,last)範圍內插入新元素來擴展雙端隊列。
用法:
deque_name.insert (iterator position, const value_type& val) or deque_name.insert (iterator position, size_type n, const value_type& val) or deque_name.insert (iterator position, InputIterator first, InputIterator last)
參數:該函數接受以下指定的四個參數:
- position–指定要插入元素的位置。
- val–指定要分配給新插入元素的值。
- n–指定要插入的元素數。每個元素都初始化為val的副本。
- first, last–指定迭代器,該迭代器指定要插入的元素範圍。範圍包括first和last之間的所有元素,包括first指向的元素,但last指向的元素。
返回值:該函數返回一個迭代器,該迭代器指向新插入的元素中的第一個。
以下示例程序旨在說明上述函數:
示例1:
// CPP program to illustrate the
// deque::insert() function
// insert elements by iterator
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque<int> dq = { 1, 2, 3, 4, 5 };
deque<int>::iterator it = dq.begin();
++it;
it = dq.insert(it, 10); // 1 10 2 3 4 5
std::cout << "Deque contains:";
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n';
return 0;
}
輸出:
Deque contains: 1 10 2 3 4 5
示例2:
// CPP program to illustrate the
// deque::insert() function
// program for second syntax
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque<int> dq = { 1, 2, 3, 4, 5 };
deque<int>::iterator it = dq.begin();
// 0 0 1 2 3 4 5
dq.insert(it, 2, 0);
std::cout << "Deque contains:";
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n';
return 0;
}
輸出:
Deque contains: 0 0 1 2 3 4 5
示例3:
// CPP program to illustrate the
// deque::insert() function
// program for third syntax
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque<int> dq = { 1, 2, 3, 4, 5 };
deque<int>::iterator it = dq.begin();
++it;
vector<int> v(2, 10);
// 1 10 10 2 3 4 5
dq.insert(it, v.begin(), v.end());
std::cout << "Deque contains:";
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n';
return 0;
}
輸出:
Deque contains: 1 10 10 2 3 4 5
相關用法
- C++ deque rbegin()用法及代碼示例
- C++ deque resize()用法及代碼示例
- C++ deque assign()用法及代碼示例
- C++ deque rend()用法及代碼示例
- C++ deque max_size()用法及代碼示例
- C++ deque::empty()、deque::size()用法及代碼示例
- C++ deque::front()、deque::back()用法及代碼示例
- C++ deque::emplace_front()、deque::emplace_back()用法及代碼示例
- C++ deque::pop_front()、deque::pop_back()用法及代碼示例
- C++ deque::clear()、deque::erase()用法及代碼示例
- C++ set insert()用法及代碼示例
- C++ vector insert()用法及代碼示例
- C++ unordered_set insert()用法及代碼示例
- C++ unordered_multiset insert()用法及代碼示例
- C++ multiset insert()用法及代碼示例
注:本文由純淨天空篩選整理自rupesh_rao大神的英文原創作品 deque insert() function in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。