Articles of estruturas de dados

Tamanho da matriz do object de exceção fora da memory

Estou tentando capturar dados de uma planilha em um array 2D. Eu estou usando o VSTO. int rc = 1048576; int cc = 1638; string[,] arr = new string[rc, cc]; A última linha lança exceção de falta de memory. Eu gostaria de mostrar uma mensagem dizendo ao usuário que apenas elementos ‘X’ podem ser capturados. […]

Mesclar 2 matrizes usando o LINQ

Eu tenho dois array simples e gostaria de mesclar usando linq de junit: int[] num1 = new int[] { 1, 55, 89, 43, 67, -3 }; int[] num2 = new int[] { 11, 35, 79, 23, 7, -10 }; var result = from n1 in num1 from n2 in num2 select result;

Código limpo: os objects devem ter propriedades públicas?

Estou lendo o livro “Código Limpo” e estou lutando com um conceito. Ao discutir objects e estruturas de dados, ele afirma o seguinte: Objetos escondem seus dados por trás de abstrações e expõem funções que operam nesses dados. Estruturas de Dados expõem seus dados e não possuem funções significativas. Então, o que eu estou conseguindo […]

Procurando a implementação da tree de sufixos em C #?

Eu implementei uma pesquisa básica para um projeto de pesquisa. Estou tentando tornar a pesquisa mais eficiente construindo uma tree de sufixos . Estou interessado em uma implementação C # do algoritmo Ukkonen . Eu não quero perder tempo fazendo o meu próprio se tal implementação existir.

Dicionário bidirecional?

Eu tenho dois conjuntos de objects onde, em alguns casos, o primeiro conjunto será usado como chaves para o outro conjunto, e em outros casos, o segundo conjunto será usado como chaves para o primeiro conjunto. Além disso, não deve haver duplicatas em nenhuma das listas. Qual seria uma boa estrutura de dados a ser […]

Melhor implementação para estrutura de dados de pares de valores-chave?

Então eu tenho andado com o C # um pouco ultimamente, e todas as collections genéricas me deixaram um pouco confuso. Digamos que eu quisesse representar uma estrutura de dados em que o header de uma tree fosse um par de valores-chave e, em seguida, houvesse uma lista opcional de pares de valores-chave abaixo deles […]

Como criar uma tree binária

Eu não quis dizer tree de pesquisa binária. Por exemplo, se eu inserir valores 1, 2, 3, 4, 5 em uma tree de busca binária, o caminho dentro da linha dará 1,2,3,4,5 como saída. mas se eu inserir os mesmos valores em uma tree binária, a passagem inorder deve dar 4,2,5,1,3 como saída. A tree […]

Fila de prioridade C #

Estou procurando uma fila de prioridades com uma interface como esta: class PriorityQueue { public void Enqueue(T item, int priority) { } public T Dequeue() { } } Todas as implementações que vi presumem que o item é um IComparable mas não gosto dessa abordagem; Eu quero especificar a prioridade quando estou empurrando para a […]

Dicionários multi-chave (de outro tipo) em c #?

Com base nesta questão , existe uma solução simples para ter um dictionary de várias chaves onde cada uma das chaves individualmente pode ser usada para identificar o valor? ie. MultikeyDictionary foo; foo.Add(key1, key2, value); myValue = foo[key1]; // value == myValue foo.Remove(key2); myValue = foo[key1]; // invalid, Exception or null returned

Existe uma estrutura de dados “Set” no .Net?

Idealmente, estou procurando uma class de conjunto lógica e modelada. Ele teria todas as operações padrão, como Union, Intersection, Etc. e recolher itens duplicados. Acabei criando minha própria class de conjunto com base no C # Dictionary – apenas usando as teclas.