Implementação existente do Btree ou da árvore B+em Java [fechado]
estou a fazer um projecto no qual preciso de btree ou b+estrutura de dados em árvore. Alguém sabe de uma implementação existente do btree ou B+tree (com Inserir, excluir, pesquisar algoritmos)? Ele deve aceitar string como entrada e forma btree ou árvore B+desta string.
4 answers
Na falta de detalhes sobre o problema que você precisa resolver, eu vou me permitir sugerir uma solução alternativa que {[[2]}Pode resolver o seu problema: use uma árvore vermelha/preta em vez disso.
A árvore vermelha/negra pode ser considerada como uma árvore b, como explicado na Wikipédia:
Uma árvore vermelha-negra é semelhante em estrutura a uma árvore B de ordem 4, onde cada nó pode conter entre 1 a 3 valores e (em conformidade) entre 2 a 4 ponteiros para crianças. Em tais B-tree, cada nó conterá apenas um valor correspondente ao valor em um nó preto da árvore vermelho-preto, com um valor opcional antes e/ou depois dele no mesmo nó, ambos combinando com um nó vermelho equivalente da árvore vermelho-preto [...]
Java tem duas classes incorporadas, TreeMap e TreeSet , fornecendo árvores vermelhas / pretas. Nenhum destes vai pegar uma corda como entrada e crescer uma árvore a partir dela, mas você pode ser capaz de implementar algo semelhante "em torno" um desses classe.
O Jdbm tem uma implementação muito sólida da árvore b+. Também h+árvore que é uma interessante estrutura de dados relacionados.