Funções de vários níveis de C ++

Funções de vários níveis de C ++
O componente multiset da biblioteca padrão C ++ é utilizado para armazenamento e acesso de um conjunto em que os valores dos componentes envolvidos são empregados como os valores -chave para organizar dinamicamente os dados, mesmo que não precisem ser únicos. Não é fácil modificar manualmente o valor chave de um item em um multiset. Em vez disso, os componentes que possuem novos valores devem ser adicionados e os valores antigos devem ser eliminados dos componentes. Os multisets são recipientes idênticos para definir recipientes. Eles mantêm os valores na forma de chaves em uma sequência específica, assim como um conjunto. Os elementos de um multiset são especificados como chaves, assim como os conjuntos.

A principal distinção entre um conjunto e um multiset é que um conjunto possui teclas separadas, mas um multiset permite chaves com um valor semelhante. As árvores de pesquisa binária são implementadas usando chaves multiset. Depois que os itens são incluídos no multiset, esses itens não podem ser modificados; Eles só podiam ser adicionados ou removidos. O arquivo de cabeçalho para #include contém um multiset. Os iteradores podem ser usados ​​para recuperar os componentes do multiset.

Métodos usados ​​em multisets

Aqui estão os seguintes métodos de multiset C ++:

  • BEGIN () FUNÇÃO: Dá um iterador ao item inicial do conjunto.
  • Função end (): fornece um iterador ao item após o item final do conjunto.
  • Função do tamanho (): fornece as informações de tamanho do multiset.
  • Função insert (): adiciona um item ao multiset.
  • Função EASE (): remove os componentes do multiset.
  • FECHAR () Função: Se o item estiver localizado, esta função fornecerá um iterador referente a ele; Caso contrário, ele fornece um iterador referente ao final do multiset.
  • Função clear (): remove todos os itens do multiset.
  • Função vazia (): nos informa sobre o status do multiset como sendo em branco ou não.

Vamos discutir o uso dessas funções.

Exemplo 1:

O método incorporado do C ++ STL é especificado no arquivo de cabeçalho. O iterador retornado por esse método aponta para o primeiro item no contêiner multiset que está relacionado. A função BEGN () refere -se ao componente que é o primeiro item do contêiner com base na condição de classificação, porque os contêineres de vários eis retêm os itens em ordem crescente.

#incluir
usando namespace std;
int main ()
int a [] = 22, 34, 51, 83, 68, 50, 96;
multisetcheck (a, a + 7);
cout<<"The elements of the list are: ";
para (Auto X = Verifique.começar(); x != Verifique.fim(); x ++)
cout<< *x << " ";
cout<<"\nFirst element of the list: "<<*(check.begin());
retornar 0;

Primeiro de tudo, apresentamos o arquivo de cabeçalho . Este arquivo de cabeçalho está associado à utilização das funções multiset em programas C ++. Em seguida, usamos o espaço de nome padrão como std. Agora, invocamos o método principal (). Aqui, inicializamos uma matriz. Esta matriz contém 7 valores diferentes. Esses itens da matriz são salvos em uma variável "A". Em seguida, utilizamos a função multiset. Aqui, passamos a matriz como o parâmetro da função. Agora, a declaração "cout" é usada para mostrar todos os elementos da lista necessária. Aplicamos o loop "for". Este loop itera todos os valores da lista até que a condição seja cumprida.

Empregamos os métodos iniciantes () e end () dentro do loop "for". A função BEGIN () inicia a lista a ser impressa. Enquanto a função final () termina a lista. Em seguida, aumentamos o valor da variável loop. Usamos a declaração "cout" novamente para imprimir o primeiro valor da lista especificada. Usamos o método BEGIN () para obter o primeiro valor da lista,. No final, entramos no comando "retornar 0".

Exemplo 2:

A função end () é uma parte interna do STL C ++ e é encontrada no arquivo de cabeçalho. Esta função devolve um iterador que aponta para o contêiner multiset antes do local final. O item que vem após o último item em um contêiner de váriosset é conhecido como o componente anterior à ponta. Em outras palavras, isso não aponta para nenhum componente de contêiner de multiset em particular. Este método não leva nenhum argumento.

#incluir
usando namespace std;
int main ()
int v [] = 24, 64, 19, 35, 82, 59, 46;
multisetcheck (v, v + 7);
cout<<"The items of the list are: ";
para (Auto J = Verifique.começar(); j != Verifique.fim(); j ++)
cout<< *j << " ";
retornar 0;

Primeiro, o arquivo de cabeçalho “bits/stdc++.H ”é adicionado. Esta biblioteca está associada à forma como as funções de multiset são usadas nos programas C ++. O espaço de nome padrão agora está incluído e indicado como std. Agora que invocamos o método Main (), executamos os scripts no corpo da função. Aqui, uma matriz é inicializada. Existem 7 elementos diferentes nesta matriz. Os itens desses matrizes são mantidos na variável “V.”A função multiset é então chamada. O número real de itens na matriz especificado também é declarado.

Agora, toda a lista necessária é exibida usando a instrução "Cout". Usamos o loop "for". Este loop repete cada valor na lista até que o requisito seja atendido. Chamamos os métodos iniciantes () e end () no loop "for". A lista a ser exibida é iniciada pelo método Begin () e é concluída com a ajuda da função final (). O valor de "J" é aumentado no último segmento do loop "for". Empregamos a declaração "cout" mais uma vez. A declaração "Return 0" é executada no final.

Exemplo 3:

O arquivo de cabeçalho “bits/stdc++.H ”contém o método de contagem interno () da biblioteca de modelos padrão C ++. Com a ajuda desta função, determinamos quantos itens têm uma certa chave. Esta função pode ser aplicada para contar o número de vezes. O mesmo item é usado em um multiset porque um multiset pode incluir muitos valores para um membro específico. Em todo o contêiner, o count () procura a chave e depois retorna os resultados. O método retorna 0 se não houver nenhum dos elementos que estamos procurando no conjunto. O contêiner multiset relacionado deve ser examinado para o valor único do método como argumento, o que é necessário.

#incluir
usando namespace std;
int main ()
int u [] = 78, 23, 56, 78, 91, 16, 78, 62;
multisetcheck (u, u + 8);
cout<<"The values of the list are: ";
para (Auto L = Verifique.começar(); eu != Verifique.fim(); L ++)
cout<< *l << " ";
cout<< "\n78 is present: "<cout<< "\n56 is present: "<retornar 0;

No início, incluímos a biblioteca. Na próxima etapa, utilizamos o espaço para nome padrão. O método principal () agora é chamado. Aqui, uma matriz é inicializada. Oito números inteiros diferentes são especificados nesta matriz. Esses membros da matriz são mantidos em uma variável chamada “u.”Em seguida, usamos o método multiset. Aqui, fornecemos a matriz como um parâmetro para a função multiset. Também indicamos a contagem geral de elementos dessa matriz. Os valores da lista necessária são exibidos usando a instrução "cout". O loop "for" é usado aqui. Até que a condição seja atendida, esse loop itera através de cada item na matriz.

Usamos as funções iniciantes () e end () com o loop "for". A lista começa a imprimir quando o método Begin () é usado. Mas a lista é encerrada pelo método final (). O valor do "eu" é aumentado dentro do loop "for". Mais uma vez, o comando "cout" é aplicado para imprimir a probabilidade com que o número 78 aparece na lista definida. O método "count ()" é chamado para encontrar a probabilidade. Também queremos saber com que frequência o valor “56” existe na lista. Então, usamos a função count () mais uma vez. Para exibir a resposta, usamos a declaração "cout". A declaração "Return 0" é digitada no término do código.

Exemplo 4:

O valor dado como o ponto de um parâmetro é removido pelo método multiset, EASE (). Execute o seguinte programa para ver como o método EASE () executa:

#incluir
usando namespace std;
int main ()

multissetset;
multiset :: iterator itr;
para (int k = 1; k < 20; k++)
definir.inserir (k);

cout<< "Original set: ";
para (iTR = set.começar();
itr != set.fim();
++itr)
cout
<< " << *itr;
cout<< '\n';
itr = set.começar();
itr ++;
definir.apagar (ITR);
cout<< "Updated set: ";
para (iTR = set.começar();
itr != set.fim();
++itr)
cout<< " << *itr;
cout<< '\n';
retornar 0;

Aqui, incorporamos a biblioteca . Este arquivo de cabeçalho lida com o uso das funções multiset. Então, usamos o espaço de nome padrão. Junto com isso, chamamos a função principal (). Utilizamos a função multiset duas vezes. Para o primeiro método multiset, o conjunto é passado como um atributo. E para o segundo método multiset, o iterador "ITR" é fornecido como argumento.

Além disso, aplicamos o loop "para". Inicializamos uma variável de loop primeiro. Então, o loop itera sobre o valor abaixo de 20. Em seguida, faça um incremento na variável loop. Usamos a declaração "cout" para mostrar o conjunto real de elementos. Vamos usar o loop "for" mais uma vez. Aqui, chamamos o método Begin (). Junto com isso, invocamos a função final (). Aplicamos essas funções no valor do iterador "ITR". Então, o valor do iterador é aumentado em 1. Queremos remover o segundo valor do conjunto necessário, por isso usamos o método EASE ().

Depois disso, a declaração "cout" é aplicada para imprimir os elementos do conjunto após a remoção do segundo valor. Para exibir os elementos do conjunto em uma sequência, utilizamos o loop "for" novamente. Dentro do loop "for", as funções iniciantes () e end () são empregadas para iniciar e encerrar o conjunto. No final, utilizamos o comando "Return 0".

Exemplo 5:

Nesta ilustração, inserimos os valores no conjunto usando a função de multiset insert (). Em seguida, excluímos todos os itens do conjunto usando o método multiset clear ().

#incluir
#incluir
usando namespace std;
int main ()
multiset A1;
multiset A2;
for (int j = 0; j < 15; j++)
A1.inserir (j + 1);

for (int j = 0; j < 15; j++)
A1.inserir (j + 1);

for (int j = 0; j < 15; j++)
A2.inserir ((j + 1) * 10);

for (int j = 0; j < 15; j++)
A2.inserir ((j + 1) * 10);

set :: iteratoriter;
para (iter = a1.começar(); iter != A1.fim(); iter ++)
cout<< * iter<< " ";
cout<< '\n';
para (iter = a2.começar(); iter != A2.fim(); iter ++)
cout<< * iter<< " ";
cout<< '\n';

Incluímos dois arquivos de cabeçalho e no início do código. Junto com isso, utilizamos um espaço de nome padrão. Então, chamamos a função principal (). Vamos começar a codificar no corpo da função principal (). Primeiro, chamamos a função multiset duas vezes. Inicializamos duas variáveis ​​diferentes chamadas "A1" e "A2". Então, aplicamos o loop "para".

Depois de inicializar a variável de loop, aplicar a condição na variável loop e incrementar o valor da variável de loop, usamos o método insert () para adicionar os elementos. Além disso, invocamos a função definida. Aqui, declaramos uma variável "iter" para o iterador. Aumentamos o valor do "iter". O loop "for" é usado para ambas as variáveis ​​"A1" e "A2", respectivamente.

A1.apagar (6);
A2.Apagar (A2.BEGIN (), A2.encontre (12));
cout<< "After removing the element from the required set, now the size will be: " << a1.size() << '\n';
int v = 9;
se (a1.encontre (v) != A1.fim())
cout<< "The defined set has: " << v << " values" <outro
cout<< "The defined set does not have: " << v <cout<< "The new values of the set: ";
para (iter = a1.começar(); iter != A1.fim(); iter ++)
cout<< * iter<< " ";
cout<< '\n';
A1.claro();
se (a1.vazio () == true)
cout<< "The set has no element";

retornar 0;

Além disso, usamos o método EASE (). Em seguida, usamos o método find () para obter o elemento "12" do conjunto. Usamos a declaração "cout" para mostrar o conjunto depois de remover o elemento "6". Então, inicializamos uma variável "V". Chamamos as funções find () e end () dentro da condição "se" que estão associadas ao primeiro conjunto. Aplicamos a condição "se" no elemento fornecido à função find (). Se essa condição for cumprida, “cout” imprime os elementos do conjunto. Caso contrário, a declaração "cout" imprime a mensagem que mostra que o valor necessário não está presente no conjunto.

Mais uma vez, empregamos o loop "for", BEGIN () e END () FUNÇÕES. No final, aplicamos o método clear () e a condição "se". Definimos a condição no corpo da condição "se". Se o conjunto estiver vazio, a declaração "cout" mostra o texto "o conjunto não tem elemento". Depois de tudo isso, o comando "Return0" é inserido.

Conclusão

Primeiro, conversamos sobre o que é um multiset C ++. Em seguida, observamos várias funções C ++ aplicadas a multisets. Neste artigo, executamos vários códigos que contêm uma variedade de métodos multiset. Na primeira ilustração, usamos a função Begin () e demonstramos sua funcionalidade. Um iterador referente ao primeiro membro do multiset vinculado a esse método é o valor de retorno da função. O segundo exemplo mostrou como empregar a função final () multiset. A saída deste método é um iterador que está apontando para o último componente do multiset. O método count () é usado na próxima instância para examinar o que acontece no código. Esta função totaliza todos os números inteiros que estão disponíveis e compartilham a mesma chave. Em seguida, executamos o programa usando a função EASE (). O elemento é removido do conjunto usando esta abordagem. Para adicionar o item ao conjunto, finalmente utilizamos a técnica insert ().