Fala Gustavo,
puuuxaaa como posso lhe agradecer? Funcionou de forma perfeita. Bem melhor
que a minha estrutura anterior.
Ele realmente retornou um array com os dois arrays dentro de um array com a
estrutura:

Empresa de Teste | Diretoria de teste | UN de teste | UR de teste | teste
Empresa de Teste | Diretoria de teste | UN de teste | UR de teste 2 | teste
2

Porém, eu preciso exibir da seguinte forma:

Empresa de Teste | Diretoria de teste | UN de teste | UR de teste | teste

UR de teste 2 | teste 2

Ou seja, qdo os campos se repetirem eu preciso colocar um espaço em branco
entre eles.

Minha ideia é ordenar esse ArrayList de forma que os parecidos estejam
proximos e
troca-los por espaço em branco.

Não sei se ele consegue ordenar o array desse jeito (colocando todas
proximas uma das outras)
acho que preciso mudar um pouco a estrutura. Vou dar uma testada nessa
ordenacao. Depois
possivelmente terei que comparar-los pra ver se sao iguais.

Se alguem tiver uma dica eu agradeço.

Mais uma vez obrigado Mario e Gustavo pela ajuda.

Abraços.
Higor


Em 4 de agosto de 2010 17:13, Gustavo <[email protected]> escreveu:

> Olá, Higor,
>
> Que tal o seguinte: Chamemos a lista dada de ENTRADA e comece com SAIDA
> sendo uma lista vazia. ENTRADA então é uma lista de listas.
>
> Fixe uma lista ENT da ENTRADA, verifique se ela é sublista de alguma lista
> da SAIDA. Se não for, verifique se alguma lista SAI da SAIDA é sublista de
> ENT, se for remova a lista SAI da SAIDA e, ao final, coloque ENT na SAIDA.
>
> Modificando um pouco, fica assim:
>
> 1 - Para cada lista ENT pertencente a ENTRADA faça
>   2 - Seja PERTENCE <- FALSO
>   3 - Para cada lista SAI pertencente a SAIDA faça
>     4 - Se ENT é sublista de SAI então
>       4.1 - PERTENCE <- VERDADEIRO
>       4.2 - finalize o loop 3 (isto é, vá para 6)
>     5 - Se SAI é sublista de ENT então
>       5.1 - remova SAI de SAIDA
>       5.2 - finalize o loop 3 (neste caso não precisa verificar o resto da
> lista SAIDA)
>   6 - Se PERTENCE = FALSO coloque ENT em SAIDA (senão chupe o dedo :P)
> 7 - retorne SAIDA
>
> Gustavo.
>
> Em 4 de agosto de 2010 16:41, Higor <[email protected]> escreveu:
>
>>
>> Olá Pessoal,
>> estou com um problema gigantesco aqui. Tendo a estrutura abaixo (Um List
>> com cada um dos elementos com um campo
>> CamadaSuperior que indica o seu superior):
>>
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste | teste
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste 2
>> Empresa de Teste |
>> Empresa de Teste | Diretoria de teste
>> Empresa de Teste | Diretoria de teste | UN de teste
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste 2 |
>> teste 2
>>
>> Assim acima tem-se uma List com 7 elementos e seus camadas superiores (Ex:
>> teste2 tem como camada superior
>> "UR de teste 2" que tem como camada superior "UN de teste").
>>
>> Veja que um algoritmo anterior (que montou essa estrutura) percorre um
>> banco de dados e vai da camada x até a camada y.
>> Ou seja, pode-se ver, da esquerda para direita, que sempre vamos até a
>> camada mais externa que é a empresa.
>>
>> Preciso fazer um algoritmo que nao replique as estruturas, assim seria
>> exibido apenas:
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste | teste
>> Empresa de Teste | Diretoria de teste | UN de teste | UR de teste 2 |
>> teste 2
>>
>> Fiz um algoritmo mas ficou extremamente complexo muito dificil de manter,
>> alguem tem uma sugestao por favor?
>>
>> Agora pouco pensei em fazer uma List que armazene-os e tive as réplicas,
>> mas ainda nao fiz o algoritmo.
>>
>> Por favor dêem uma luz ai pessoal.
>>
>> Abraços.
>> Higor
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Lisp-br" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<lisp-br%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/lisp-br?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Lisp-br" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<lisp-br%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/lisp-br?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Lisp-br" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/lisp-br?hl=en.

Responder a