Para quem é bom com recursividade!

Fala galera

Preciso montar um array com um Organograma de empresas pela área e tenho a seguinte classe para essas areas

public class UnidadeOrganizacional {
	private int idUnidadeOrganizacional;

	private Organizacao organizacao;
	
	private UnidadeOrganizacional unidadeOrganizacional;
	
	private String unoDescricao;
	
	private String unoFlagTipo;
}

Então por exemplo, precisaria de uma função recursiva que recebesse um array flat, com todas as áreas ( Unidade Organizacionais ) e retornasse um array formatado hierarquicamente de acordo com as areas / sub areas…
Suponha a seguinte Hierarquia

Empresa 1
        -> Area 1
                 -> Area 1.1
                        -> Area 1.1.1
        -> Area 2
                 -> Area 2.2
Empresa 2
        -> Area 3
                 ->Area 3.3           

Esse seria um esboço geral, o meu pensamento em função das classes / objetos ficaria assim

Collection Organograma<Object>
       Collection<Organizacao>
            Objeto 1 -> Organizacao
            Objeto 2 -> Collection<UnidadeOrganizacional>
                    Objeto 2.1 Collection<UnidadeOrganizacional>
                         Objeto 2.1.1 UnidadeOrganizacional 
       Collection<Organizacao>
            Objeto 1 -> Organizacao
            Objeto 2 -> Collection<UnidadeOrganizacional>
                    Objeto 2.1 UnidadeOrganizacional

Alguém com a cabeça fresquinha para fazer recursividade ai pode dar uma mão? Acho que ando trabalhando tanto ultimamente que to meio travado para conseguir fazer essa recursividade :slight_smile:

Desde já, agradeço

Sinceramente nunca ouvi falar de array formatado hierarquicamente. Isso aí que vc quer é simplesmente uma busca em profundidade em uma árvore, basta vc pesquisar que acha fácil fácil o algoritmo.

Opa, obrigado pela resposta…

Eu fiz um algoritmo aqui de ontem pra hoje, e é mais ou menos uma busca em profundidade mesmo, ele busca todos os filhos de um nodo , volta e vai buscando dos outros nodos… vou testar aqui, se funcionar coloco aki pra caso alguém precise de algo parecido

Att
Rafael