C # Hashset

C # Hashset
Em C Sharp, um hashset é um recipiente que é uma coleção de itens que não estão presentes em um formulário de pedido. Este hashset é usado quando não queremos ter dados duplicados. Hashsets funcionam como listas, mas seu desempenho é melhor do que listas. O hashset só pode armazenar o mesmo tipo de itens. É uma coleção dinâmica, o tamanho do hashset aumenta à medida que adicionamos mais itens. Este artigo conterá a criação e a adição de elementos ao hashset.

Exemplo 1

Para iniciar um programa para o hashset em C Sharp, usaremos duas bibliotecas no código -fonte. Um é o sistema e o segundo é o sistema.Coleções. Genérico, esses dois arquivos de cabeçalho desempenham um papel importante no uso de classes e funções internas para o programa.

Usando o sistema;
Usando o sistema.Coleções.Genérico;

Método 1:

Dentro da aula, o programa principal é declarado. Para criar um hashset, usamos uma classe de hashset presente na biblioteca de coleções. Um novo hashset é criado usando uma nova palavra -chave, pois está envolvido na criação dinâmica do hashset. Um hashset é uma variável de string, pois contém todos os tipos de símbolos, valores alfanuméricos, etc. Após a palavra -chave de hashset, o nome para o hashset é definido.

# Hashset myHash1 = novo hashset ();

Depois que o hashset for criado, agora começaremos a adicionar itens ao hashset um após o outro. Esta adição é feita manualmente. A principal função interna usada para inserir valores é a função 'add ()' de C #. Esta função é chamada pelo nome de um novo hashset que atua como um objeto. O valor a ser inserido no hashset é usado como um argumento no parâmetro da função add.

# MyHash1.Add ("c");

Digitamos 5 valores no hashset usando o mesmo add (). A função Add atua como uma função append () da string que continua adicionando os valores no final da string. Depois de adicionar valores, nós os exibiremos. Para acessar elementos em um hashset, usaremos um loop foreach. Este loop itera até o último elemento do hashset.

Método 2:

Outra maneira de criar um hashset é criá -lo usando um inicializador de coleção que inicializa o hashset. Isso é diferente do método 1, pois precisamos usar uma função add () para adicionar itens. Mas usando este inicializador, podemos adicionar valores no momento da declaração e criação do hashset.

# Hashset myHash2 = novo hashset () 10, 100, 1000, 10000, 100000;

Aqui o hashset é do tipo de dados inteiro. 5 valores inteiros são inseridos na função quando a criação foi feita dinamicamente.

Para exibir os elementos neste hashset, usamos novamente um loop foreach para que ele possa acessar o último elemento do hashset.

Salve o código, e isso será executado no terminal através do compilador MCS e um mono usado para a execução.

Arquivo de $ mcs.cs
$ MONO FILE.exe

Você pode ver isso usando um loop foreach, cada item do hashset é exibido.

Exemplo 2

Depois de adicionar elementos, esses itens e o hashset podem ser modificados removendo -os ou adicionando novos itens no hashset. Agora vamos escrever um programa simples para remover itens do hashset.

Então, antes de tudo, criaremos novamente um novo hashset, como fizemos antes usando a classe Hashset e, usando o método add (), todos os elementos serão adicionados.

Antes da remoção de qualquer item, gostaríamos de exibir o número de itens já presentes no hashset. Isso será feito através de uma função de contador. Esta função count () será chamada através do objeto de hashset.

# Myhash.contar ();

Depois que todos os itens são exibidos uma vez, agora removeremos o item do hashset usando uma função de remoção.

# Myhash.Remover ("rubi");

No parâmetro da função de remoção, passamos o item que queremos remover. Após a remoção, novamente, a função de contagem contará os elementos deixados após a remoção de um item. Da mesma forma, podemos remover mais itens. Mas se alguém quiser deixar o hashset inteiro vazio, isso é feito usando uma função clear (). Isso é usado para remover todos os elementos do hashset. Também é chamado de objeto de hashset.

# Myhash.claro();

Então verificaremos se o hashset está vazio ou não contando os itens através da função count ().

Exemplo 3

Agora trabalhando nas operações definidas, a classe Hashset contém alguns métodos usados ​​para aplicar algumas operações no hashset. Um deles é uma união com. Esta operação é usada para modificar o hashset atual adicionando itens totalmente novos a ele. Todos os novos itens são anexados ao anterior. Mas para manter a integridade, os itens duplicados são removidos. Por exemplo, ao adicionar elementos simplesmente a um hashset, se um hashset já tiver C Sharp, mas adicionamos novamente o item C nítido, isso será adicionado aos itens atuais. Mas usando a operação da união, a duplicidade é removida; Se um item for adicionado se já existir, ele aparecerá um único horário; Esta é a união. Isso é elaborado em um exemplo.

Primeiro, criaremos um hashset e depois adicionaremos alguns itens a ele. Depois disso, novamente, crie outro hashset através de uma classe de hashset e adicione um item a ele através da função add (). Adicionar itens deve ser seguido de forma que alguns itens sejam os mesmos que entramos no hashset. Agora, o hashset contém todos os itens separadamente. Vamos nos juntar a eles através de uma função especificada.

Agora, aplicaremos um método Uniowith () para que possamos remover os itens copiados que ocorrem duas vezes no hashset no momento da união. Esta função é chamada através do objeto do primeiro hashset e, em seguida, o parâmetro levará o objeto do segundo hashset.

# MyHash1.Unionwith (MyHash2);

Ao usá -lo, todos os itens estão presentes no primeiro hashset. Em seguida, imprimiremos os valores do primeiro hashset.

# Intersectwith ()

Ao contrário da UnionWith (), há outro operador usado para obter os itens que são copiados. Em outras palavras, esses itens do hashset são selecionados que aparecem duas vezes no hashset. Então, para implementar isso, seguiremos o mesmo exemplo acima; Vamos criar dois hashsets e depois adicionar valores a eles. Depois disso, aplicaremos a função intersect usando os objetos de hashsets.

# MyHash1.Intersectwith (myHash2);

A partir dos resultados, você pode ver que apenas dois valores eram semelhantes.

Conclusão

Hashsets podem ser criados usando duas abordagens. Um é da classe Hashset que é definida na biblioteca de arquivos do cabeçalho. E o segundo é através do inicializador da coleção. Ambos usam metodologias diferentes para adicionar itens em hashsets. Também podemos modificar os itens depois de entrar em hashsets. Ao usar um hashset, é fácil adicionar ou eliminar qualquer item. Duas operações básicas também são mencionadas aqui que são usadas para gerenciar itens de hashset. Explicamos todos esses recursos de hashsets por meio de exemplos elementares que são implementados no sistema operacional Ubuntu.