Caetano,

        Uma das primeiras coisas que vc deve ter em mente quando trabalha com java
� que com certeza j� existe alguma implementa��o dentro do JDK que resolve
de forma elegante e eficiente os problemas cl�ssicos de programa��o, como
por exemplo:

        - existem API`s para resolver problemas de sort
        - existem API`s para representar as estruturas de dados cl�ssicas (Listas,
Arrays, �rvores ...)
        - existem API`s que representam os algor�tmos de hash
        - existem API`s para resolver os problemas cl�ssicos de comunica��o em rede
        - existem API`s para resolver os problemas cl�ssicos de I/O

        No seu caso o que vc deve fazer � utilizar a classe Collections e chamar o
m�todo sort(List l). Este m�todo � uma implementa��o otimizada do algor�tmo
de ordena��o Merge Sort, o qual tem uma performance bastante pr�xima do
Quick Sort al�m de ser est�vel, ou seja, seu pior caso tem um tempo de
ordena��o muito pr�ximo do caso �timo, coisa que n�o acontece no Quick Sort
onde o pior caso tem uma performace muito inferior ao caso �timo.
        Para utilizar esse m�todo os objetos que estiverem na sua lista devem
implementar a interface Comparable, ou ent�o vc pode tamb�m utilizar o
m�todo com a assinatura sort(List list, Comparator c) onde Comparator � um
objeto que implemente a interface Comparator, ou seja, este ser� o objeto
encarregado de efetuar a compara��o entre os objetos que est�o na lista.
        As classes que s�o os wrappers dos tipos primitivos (Character, Byte,
Short, Integer, Long, Float, Double) e mais a classe String, j� implementam
a interface Comparable, ou seja, se a sua lista for de algum desses objetos
vc poder� chamar diretamente o m�todo sort(List l) que a sua lista ser�
ordenada de acordo com o conceito de "natural order", ou seja, ordem
alfab�tica para String e ordem crescente para n�meros.
        Caso vc esteja querendo ordenar uma lista de objetos Pessoa, por exemplo,
a� sim vc vai precisar utilizar o n�todo sort(List list, Comparator c), onde
o Comparator ir� definir como os seus objetos Pessoa devem ser ordenados.
        Espero ter ajudado,

        Um abra�o,
        Anderson M. C. de Souza



-----Mensagem original-----
De: Caetano [mailto:[EMAIL PROTECTED]]
Enviada em: s�bado, 2 de mar�o de 2002 22:18
Para: [EMAIL PROTECTED]
Assunto: [java-list] Sort Em Array...


Prezados Colegas,

Estou avancando nos meus estudos com Java e por isto, segue em anexo,
pequeno codigo que criei com objetivo de ordenar um array numerico.
O algoritmo retirei de um news de vb... Ent�o tentei criar algo que utilize
bem Java e Orientacao a Objetos.

Gostaria de receber coment�rios sobre o c�digo, codifica��o, estilo da
classe (se esta mais para OO ou para procedural...)

Ps.: Nao fui atras de ver se outras classes em Java ja implementam solucoes
semelhantes (talvez Vector..). O Objetivo maior eh aprender ...
[]'s

Caetano
[EMAIL PROTECTED]





------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a