
Forma De Ordenação Do Sort()
#1
Posted 12/07/2004, 05:19
Alguém sabe qual o algoritmo que a função sort usa para ordenar o vetor? (se é quicksort, shellsort, blablablasort)
Preciso saber disto logo, se alguém souber, ajude, please!!
abraços
Kcyo
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas
#2
Posted 12/07/2004, 05:23
Ordena pelo o valor do array!

Detalhe: Ela Ordena o valor do array, mudando a chave.
Tem a função asort(); que mantem a chave
thau!
Edição feita por: Rafael :), 12/07/2004, 05:28.
Justiça
Esperança
Saúde
União
Salvação
Deus é fiel...
#3
Posted 12/07/2004, 05:33


Ordena pelo o valor do array!

Detalhe: Ela Ordena o valor do array, mudando a chave.
Tem a função asort(); que mantem a chave
thau! [/quote]
Obrigado, amigo, mas isso eu já sei!

o que eu quero saber é mais a fundo; qual o algoritmo que ele utiliza para fazer esse ordenamento.
Ah, isto é para um trabalho de aula, da cadeira de Classificação e Pesquisa de Dados, antes que alguém pense que estou só de brincadeira por aqui...

@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas
#4
Posted 12/07/2004, 08:50
A função sort() como foi dita ordena de acordo com o tipo de ordenação indicada no segundo parâmetro da função.
Dentre elas estão:
SORT_REGULAR - compara os itens normalmente
SORT_NUMERIC - compara os itens como valores numéricos
SORT_STRING - compara os itens como strings
Exemplo:
PHP |
<?php $aCompras = array("amaciante","óleo","tomate","macarrão","leite","refrigerante"); sort($aCompras,SORT_REGULAR); while ($itens = each($aCompras)){ echo 'Chave: ['.$itens[0].'] '.'Valor: '.$itens[1].'<br>'; } //Isto irá retornar os intens ordenados em ordem alfabética alterando o valor da chave ?> |
O retorno deste exemplo será:
Chave: [0] Valor: amaciante
Chave: [1] Valor: leite
Chave: [2] Valor: macarrão
Chave: [3] Valor: refrigerante
Chave: [4] Valor: tomate
Chave: [5] Valor: óleo
------------------------------------
Maiores informações consultar: Manual sort()
Espero ter ajudado

Edição feita por: <? K3RN3L_P4N1C ?>, 12/07/2004, 08:51.
$nome = Tiago Leão;
$nick = <? K3RN3L_P4N1C ?>;
$email = tiagoacl@ig.com.br;
$icq = 124996176;
$interesses = PHP;
//Acredite em Jesus, porque ele ja acreditou em você um dia...
?>
#5
Posted 12/07/2004, 09:01
Olá Kcyo,
A função sort() como foi dita ordena de acordo com o tipo de ordenação indicada no segundo parâmetro da função.
Dentre elas estão:
SORT_REGULAR - compara os itens normalmente
SORT_NUMERIC - compara os itens como valores numéricos
SORT_STRING - compara os itens como strings
Exemplo:
PHP |
<?php $aCompras = array("amaciante","óleo","tomate","macarrão","leite","refrigerante"); sort($aCompras,SORT_REGULAR); while ($itens = each($aCompras)){ echo 'Chave: ['.$itens[0].'] '.'Valor: '.$itens[1].'<br>'; } //Isto irá retornar os intens ordenados em ordem alfabética alterando o valor da chave ?> |
O retorno deste exemplo será:
Chave: [0] Valor: amaciante
Chave: [1] Valor: leite
Chave: [2] Valor: macarrão
Chave: [3] Valor: refrigerante
Chave: [4] Valor: tomate
Chave: [5] Valor: óleo
------------------------------------
Maiores informações consultar: Manual sort()
Espero ter ajudado

Acho q ninguém entendeu o que eu quis dizer, então deixa pra lá...
Obrigado pelas tentativas!
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas
#6
Posted 12/07/2004, 09:14
...realmente ninguem entendeu o que vc quis dizer,pois pelo que li,entendi o que o pessoal respondeu!!
não achas melhor explicar denovo?? de um outro jeito??
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de Deus e vai.."
#7
Posted 12/07/2004, 09:15

Expresse-se melhor e obterá melhores respostas em suas perguntas.
Alias, isto deveria ser imprescindível para quem se julga poeta como você, Cassio Rugeri Cons.
Abraços
Edição feita por: <? K3RN3L_P4N1C ?>, 12/07/2004, 09:33.
$nome = Tiago Leão;
$nick = <? K3RN3L_P4N1C ?>;
$email = tiagoacl@ig.com.br;
$icq = 124996176;
$interesses = PHP;
//Acredite em Jesus, porque ele ja acreditou em você um dia...
?>
#8
Posted 12/07/2004, 09:25
Puxa, desculpa, mas o que vc falou de brincadeira...faz parecer que o pessoal tah aki pra brincar!! ¬¬
Mas a parada eh o seguinte...ele tah querendo saber, como que a função asort funciona para ordenar....
Po ...ele quer o algoritmo...eu te dou um dica... como que você faria para ordenar uma lista de compras alfabeticamente??? é a mesma coisa!
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.
#9
Posted 12/07/2004, 09:32
acho que é Bubble Sort... alias, na maioria das linguagens, se há uma função residente de ordenação de vetores, ela usa esse algoritmo...
se sua aplicação precisa de um algoritmo diferente, melhor vc criar sua biblioteca propria.
editando: vc até soube se expressar, mas sua pergunta envolve um conhecimento técnico que não se aprende nos "cursinhos" atuais de php, nem em apostilas, etc... isso realmente é coisa acadêmica e com utilidade prática apenas pra uma minúscula parcela dos usuarios da linguagem.
Edição feita por: Stormbringer, 12/07/2004, 09:34.
๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑
#10
Posted 12/07/2004, 19:45
Primeiramente, obrigado Stormbringer, pelo menos você entendeu o que eu quis dizer...

Sobre a forma de expressão, sei que a perfeita compreensão da minha pergunta exige um pouco mais de conhecimento teórico sobre ordenamento de dados, coisa que se aprende na faculdade, mas como conheço várias pessoas que, mesmo sem fazer faculdade, conhecem os mencionados algoritmos, acreditei que aqui haveria mais pessoas que soubessem do que se tratava, e talvez pudessem responder à minha pergunta. Não pensem que estou querendo subestimar as pessoas que não conhecem o assunto, longe de mim! Pois com certeza estas mesmas pessoas têm muito mais conhecimento que eu em outros aspectos! Desculpem-me se alguém está se sentindo ofendido, pois esta não é a minha intenção, ok?!
<? K3RN3L_P4N1C ?>: acho q ja disse tudo aí em cima... desculpe se te ofendi quando disse que a tua resposta não ajudou... ah, e a poesia é só um passatempo, não me considero realmente um "poeta"!

fly2k: novamente, não foi a minha intenção ofender ninguém... quando falei aquilo sobre "estar de brincadeira", foi pensando no que eu mesmo me indagaria ao ler um post como o que eu escrevi: "pra que que esse cara quer saber o tipo de sort? se ele quer usar, usa e pronto, não precisa saber o que está por trás! esse cara deve estar sem nada pra fazer e fica inventando pergunta idiota pra gente responder!", por isso, já me preveni quanto a isto, pra evitar que alguém que realmente soubesse a resposta pensasse isso e se mandasse sem responder, compreendes?
Bom, se você chegou até o final deste post, parabéns! Por pouco nem eu agüento ler tudo isso!

Obrigado pela atenção e desculpem qualquer coisa
Abraços
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas
#11
Posted 13/07/2004, 08:16
na documentação online nao tem nada... talvez na documentação "developer" tenha, mas de qualquer forma, diverta-se com o codigo fonte:
http://www.php.net/downloads.php
pega o source da versao 4.3, pq pode ser que na 5 tenham mudado

๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑
#12
Posted 13/07/2004, 08:59
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)