Método Find do Set STL em C++

C++Beginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá sobre o método find() da STL Set na programação C++. Set (Conjunto) é usado para armazenar uma lista única de valores e automaticamente fornece uma ordenação aos seus elementos. Por padrão, a ordenação é em ordem crescente. O método find() retorna um iterador para o elemento que é procurado no container set. Se o elemento não for encontrado, o iterador aponta para a posição logo após o último elemento no set.

Incluir os headers necessários

No primeiro passo, incluímos os headers necessários iostream e set.

#include <iostream>
#include <set>

Usar o namespace padrão

No segundo passo, usamos o namespace padrão.

using namespace std;

Declarar o conjunto

No terceiro passo, declaramos um conjunto (set) para armazenar inteiros.

set<int> s;

Inserir elementos no conjunto

No quarto passo, inserimos elementos inteiros no conjunto.

s.insert(5);
s.insert(39);
s.insert(64);
s.insert(82);
s.insert(35);
s.insert(54);

Imprimir os elementos do conjunto

No quinto passo, imprimimos os elementos do conjunto usando um iterador (iterator).

for (auto it = s.begin(); it != s.end(); ++it) {
        cout << " " << *it;
}

Encontrar um elemento no conjunto

No sexto passo, encontramos um elemento no conjunto usando o método find().

auto it = s.find(39);

Imprimir elementos maiores que o elemento dado

No sétimo passo, imprimimos os elementos do conjunto que são maiores ou iguais ao elemento encontrado no conjunto usando o método find().

for (; it != s.end(); ++it) {
        cout << " " << *it;
}

Remover um elemento do conjunto

No oitavo passo, apagamos um elemento do conjunto usando o método erase().

s.erase(39);

Código Completo

#include <iostream>
#include <set>

using namespace std;

int main() {
    // Declare a set
    set<int> s;

    // Insert elements into the set
    s.insert(5);
    s.insert(39);
    s.insert(64);
    s.insert(82);
    s.insert(35);
    s.insert(54);

    // Print the elements of the set
    for (auto it = s.begin(); it != s.end(); ++it) {
        cout << " " << *it;
    }

    // Find an element in the set
    auto it = s.find(39);

    // Print elements greater than the given element
    for (; it != s.end(); ++it) {
        cout << " " << *it;
    }

    // Erase an element from the set
    s.erase(39);

    return 0;
}

Resumo

Neste laboratório, você aprendeu como usar o método find() do STL Set em programação C++. Você também aprendeu como declarar um conjunto (set), inserir elementos em um conjunto, imprimir os elementos de um conjunto, apagar um elemento de um conjunto e encontrar um elemento em um conjunto usando o método find().

Você também aprendeu sobre a propriedade de unicidade e a ordenação automática dos elementos de um conjunto. Você pode usar este conhecimento básico de find() e conjuntos para realizar operações mais complexas com conjuntos em C++.