Jump to content


Photo

Forma De Ordenação Do Sort()


  • Faça o login para participar
11 replies to this topic

#1 Kcyo

Kcyo

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado
  • Localidade:Porto Alegre

Posted 12/07/2004, 05:19

Ae galera!
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
Kcyo
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas

#2 Rafael :)

Rafael :)

    Aprendendo e ensinando PHP.

  • Usuários
  • 549 posts
  • Sexo:Não informado
  • Localidade:São Paulo
  • Interesses:Aprender PHP!

Posted 12/07/2004, 05:23

Olá

Ordena pelo o valor do array! :D

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.

Jesus:

Justiça
Esperança
Saúde
União
Salvação

Deus é fiel...

#3 Kcyo

Kcyo

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado
  • Localidade:Porto Alegre

Posted 12/07/2004, 05:33

:)+12 Jul 2004, 05:23 -->
QUOTE(Rafael :) @ 12 Jul 2004, 05:23 )
Olá

Ordena pelo o valor do array! :D

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! :P
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... :D
Kcyo
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas

#4 <? K3RN3L_P4N1C ?>

<? K3RN3L_P4N1C ?>

    <? PHP4N1C ?>

  • Usuários
  • 287 posts
  • Sexo:Não informado
  • Localidade:Sinop - MT

Posted 12/07/2004, 08:50

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 ;)

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 Kcyo

Kcyo

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado
  • Localidade:Porto Alegre

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 ;)

Infelizmente não ajudou amigo...
Acho q ninguém entendeu o que eu quis dizer, então deixa pra lá...
Obrigado pelas tentativas!
Kcyo
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas

#6 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

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??
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#7 <? K3RN3L_P4N1C ?>

<? K3RN3L_P4N1C ?>

    <? PHP4N1C ?>

  • Usuários
  • 287 posts
  • Sexo:Não informado
  • Localidade:Sinop - MT

Posted 12/07/2004, 09:15

Ora, se ninguem entendeu o que você quiz dizer o problema está na sua forma de se expressar. :huh:

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 fly2k

fly2k

    Super Veterano

  • Usuários
  • 2262 posts
  • Sexo:Não informado

Posted 12/07/2004, 09:25

A parada é o seguinte...
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!
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#9 Stormbringer

Stormbringer

    I'd love to stay with you all

  • Ex-Admins
  • 2927 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO
  • Interesses:Atualmente: pesquisa e desenvolvimento de web-games

Posted 12/07/2004, 09:32

academicamente:
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 Kcyo

Kcyo

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado
  • Localidade:Porto Alegre

Posted 12/07/2004, 19:45

Vou tentar responder a todos...
Primeiramente, obrigado Stormbringer, pelo menos você entendeu o que eu quis dizer... :) mas tu tens certeza desta resposta? É que provavelmente eu vá falar sobre isso na apresentação do meu trabalho, e não quero dar balão né! hehe...
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! :P
Obrigado pela atenção e desculpem qualquer coisa
Abraços
Kcyo
@ Instituto de Informática, UFRGS, Porto Alegre
k.c.y.o@bol.com.br
www.inf.ufrgs.br/~crcons
Jovens Poetas

#11 Stormbringer

Stormbringer

    I'd love to stay with you all

  • Ex-Admins
  • 2927 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO
  • Interesses:Atualmente: pesquisa e desenvolvimento de web-games

Posted 13/07/2004, 08:16

cara, boa sorte! acho que pra ter certeza absoluta vc vai ter que baixar o source-code do php pra ver como a função sort faz, ehheheh

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 (y)

๑۩۞۩๑Let the Carnage Begin!!๑۩۞۩๑


#12 fly2k

fly2k

    Super Veterano

  • Usuários
  • 2262 posts
  • Sexo:Não informado

Posted 13/07/2004, 08:59

Não me senti ofendido..uma fez que particularmente, faço desse forum um passatempo......mas levo a sério... bom...o que eu digo....já que você vai apresentar esse trabalha a uma bancada examinadora....vc tem que sebasear em fontes estruturadas para tal trabalho...então... o que digos? nos damos os camnhos... e vc vai atrás...pesquise sobre isso...ache documentação... pq ....naum vai colocar como referência bibliográfica os menbros do fórum neh?!
Quer aprender PHP? -> www.manjaphp.com.br
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)

IPB Skin By Virteq