Introdução
Neste laboratório, criaremos um programa C++ para demonstrar o funcionamento de um Unordered Multiset em STL. Aprenderemos sobre o conceito de Unordered Multiset e sua implementação na linguagem de programação C++.
Incluir Arquivos de Cabeçalho
Nesta etapa, incluiremos os arquivos de cabeçalho necessários para o nosso programa. Incluiremos os arquivos de cabeçalho iostream e unordered_set.
#include<iostream>
#include<unordered_set>
using namespace std;
Definir Funções para Exibir Multiset e Vector
Nesta etapa, definiremos duas funções para exibir o conteúdo de um Unordered Multiset e um Vetor.
void showMultiset(unordered_multiset<int> s)
{
unordered_multiset<int>::iterator i;
for (i = s.begin(); i != s.end(); i++)
{
cout << *i << " ";
}
}
void showVector(vector<int> v)
{
vector<int>::iterator i;
for (i = v.begin(); i != v.end(); i++)
{
cout << *i << " ";
}
}
Declarar e Preencher Unordered Multiset
Nesta etapa, declararemos um Unordered Multiset e o preencheremos com alguns elementos usando o método insert().
unordered_multiset<int> s;
s.insert(50);
s.insert(30);
s.insert(50);
s.insert(80);
s.insert(30);
s.insert(60);
Exibir Unordered Multiset e Seu Tamanho
Nesta etapa, exibiremos o Unordered Multiset e seu tamanho usando a função showMultiset() e o método size().
cout << "\n\nO número de elementos no Unordered Multiset é: " << s.size();
cout << "\n\nOs elementos do Unordered Multiset são: ";
showMultiset(s);
Ordenar e Exibir Unordered Multiset Usando um Vector
Nesta etapa, copiaremos os elementos do Unordered Multiset para um Vector e ordenaremos o Vector. Em seguida, exibiremos os elementos ordenados do Unordered Multiset usando a função showVector().
vector<int> v(s.begin(), s.end());
sort(v.begin(), v.end());
cout << "\n\nOs elementos do Unordered Multiset após a ordenação usando um vector são: ";
showVector(v);
Executar o Código
Nesta etapa, executaremos o código compilando-o usando o comando g++ e, em seguida, executando-o usando o comando ./a.out.
g++ main.cpp -o main && ./main
A saída deve ser:
The number of elements in the Unordered Multiset are: 6
The elements of the Unordered Multiset are: 50 30 80 50 30 60
The elements of the Unordered Multiset after sorting using a vector are: 30 30 50 50 60 80
Resumo
Neste laboratório, aprendemos sobre o conceito de Unordered Multisets e sua implementação em C++ usando a biblioteca STL. Vimos como declarar e inicializar um Unordered Multiset, como exibir seu conteúdo e como ordená-lo usando um Vector.
Esperamos que você tenha gostado deste laboratório e que ele tenha sido útil para aprender sobre Unordered Multisets em C++.



