Programa C++ Unordered Multiset Usando STL

C++Beginner
Pratique Agora

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++.