Pessoal, gostaria de saber como que faço para saber qual será o nivel máximo de uma árvore que irei construir da seguinte forma.
1 - Tenho uma lista que irei pegar o tamanho dela com lista.size()
2 - Essa minha árvore vai ter 5 filhos e cada filho vai mais 5 filhos e assim por diante.
Alguém poderia me dar uma ideia de como eu poderia fazer isso?
Desde de já obrigado pela ajuda de todos.
Tentei fazer da seguinte forma para descobrir o nivel da árvore mais acho que não está certo.
Explicando o código:
Como minha lista sempre vai ter pelo menos um elemento então terei pelo menos um nível por isso que inicializo essa minha variavel quantidadeDeNiveis com 1.
publicstaticvoidmain(String[]args){inttamanhoLista=1500;System.out.println("Quantidade de Niveis: "+nivelMaximo(tamanhoLista));}publicstaticintnivelMaximo(intc){intquantidadeDeNiveis=1;inttamanhoLista=c;for(inti=1;i<c;i=(int)Math.pow(5,quantidadeDeNiveis)){System.out.println(i);if(tamanhoLista>i){quantidadeDeNiveis++;}}returnquantidadeDeNiveis;}
Eu fiz assim, mas tenho minhas dúvidas se estar correto.
Alguém poderia me dizer se realmente é assim?
R
redr4gon
Rapaz… fiz rapidao aqui no forum mesmo por isso deve ter erro mas da pra vc ter uma ideia…
Fiz do seguinte modo: a pessoa passa o tamanho. A variavel qtdePorNivel mostra quantos nós tem aquele nivel. No nivel 1 tem 1 nó que é onde começa. Esse nó tem 5 filhos então o nivel 2 vai ter 5. Nivel 3 vai ter 25 e assim por diante. O For vai aumentando o nivel e medindo quantos tem por nivel comparado ao tamanho passado. Quando o tamanho for menor que a qtdade por nivel, tem-se o numero de nivel ja que o restante do tamanho seria alocado naquele nivel.
Nao sei se é o metodo ideal, o mais pratico ou o mais rapido… foi o que pensei agora aqui e talvez funcione…