Pergunta

Google Collections contém a interface Multiset ea classe TreeMultiset, mas eu estava surpreso ao descobrir que não há nenhuma interface SortedMultiset correspondente.

Algo como isso seria muito útil para modelar distribuições de probabilidade discretas.

Antes de tentar implementar isso, eu gostaria de saber se há uma razão específica para deixá-lo fora, por exemplo, provável violação dos Multiset ou Collection invariantes, ou problemas de desempenho inerentes etc.


Editar : Eu não sabia que ele originalmente, mas este é realmente 3 pedidos separados:

  1. Uma alteração no tipo de retorno de um método (TreeMultiset.entrySet)
  2. Uma nova interface para combinar a funcionalidade existente de TreeMultiset
  3. Um novo par de métodos para somar as contagens em ramos da árvore
Foi útil?

Solução

Eu acho que é só que ninguém nunca necessária ainda, para que não tenha escrito ainda. É algo que eu consideraria.

Outras dicas

TreeMultiset.elementSet () retorna um SortedSet, que pode fornecer algumas das funcionalidades que quiser.

ETA: finnw, os métodos SortedMultiset você está solicitando não iria fornecer uma resposta significativamente mais rápido para a pergunta "quantos elementos na minha Multiset são menos de 42?" A implementação TreeMultiset ainda teria que iterate através das entradas MultiSet e somar as contagens dos elementos relevantes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top