在 C++ 中,向量是一個動態數組,允許我們按順序存儲多個元素,而 multiset 是一個容器,允許我們以某種排序順序存儲具有重複值的多個元素。在本文中,我們將學習如何在 C++ 中將向量轉換為多重集。
例如
Input: myVector = {2, 4, 9, 1, 3, 5, 4, 3, 2} Output: myMultiset = {1, 2, 2, 3, 3, 4, 4, 5, 9}
在 C++ 中將向量分配給多重集
轉換向量到多集在 C++ 中,我們可以簡單地使用範圍構造函數multiset
它將向量的迭代器作為參數。
多集範圍構造函數的語法
multiset<type> myMultiset(first, last);
第一的迭代器指向範圍的開始並且最後的迭代器指向範圍的末尾。
在 C++ 中將向量轉換為多重集的 C++ 程序
C++
// Program to demonstrate converting a vector to a multiset
#include <iostream>
#include <set>
#include <vector>
using namespace std;
int main()
{
// Creating a vector
vector<int> nums = {2, 4, 9, 1, 3, 5, 4, 3, 2};
// Converting vector to multiset
multiset<int> myMultiset(nums.begin(), nums.end());
// Printing the elements of the multiset
cout << "Elements of multiset are: ";
for (const auto& i : myMultiset) {
cout << i << " ";
}
return 0;
}
輸出
Elements of multiset are: 1 2 2 3 3 4 4 5 9
時間複雜度:O(N logN),其中 N 是元素數量
空間複雜度:O(N)
相關用法
- C++ Vector轉Set用法及代碼示例
- C++ Vector assign()用法及代碼示例
- C++ Vector at()用法及代碼示例
- C++ Vector back()用法及代碼示例
- C++ Vector begin()用法及代碼示例
- C++ Vector capacity()用法及代碼示例
- C++ Vector cbegin()用法及代碼示例
- C++ Vector cend()用法及代碼示例
- C++ Vector clear()用法及代碼示例
- C++ Vector crbegin()用法及代碼示例
- C++ Vector crend()用法及代碼示例
- C++ Vector data()用法及代碼示例
- C++ Vector emplace()用法及代碼示例
- C++ Vector end()用法及代碼示例
- C++ Vector erase()用法及代碼示例
- C++ Vector front()用法及代碼示例
- C++ Vector hypot()用法及代碼示例
- C++ Vector insert()用法及代碼示例
- C++ Vector max_size()用法及代碼示例
- C++ Vector pop_back()用法及代碼示例
- C++ Vector push_back()用法及代碼示例
- C++ Vector rbegin()用法及代碼示例
- C++ Vector rend()用法及代碼示例
- C++ Vector resize()用法及代碼示例
- C++ Vector size()用法及代碼示例
注:本文由純淨天空篩選整理自shivanshmahajan876大神的英文原創作品 How to Convert Vector to Multiset in C++?。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。