Hmmm... assim de repente:
tens um array de algarismos por exemplo:
[2 3 5 4 1 8 0 3 6]
Sacas a primeira posição do array -> 2
comparas com a segunda -> 3
3 > 2 ? (esta comparação deve ser feita com o código ASCII como o Andromeda disse)
Sim... então guardas o 3...
passas para a terceira posição do array -> 5
5 > 3?
Sim... então guardas o 5...
quarta posição do array -> 4
4 > 5?
Não... ficas com o 5
quinta posição-> 1
1 > 5?
Não... ficas com o 5
sexta posição -> 8
8 > 5?
Sim... ficas com o 8
sétima posição -> 0
...
bla bla bla
Chegas ao fim do array com o 8 guardado... uma vez que é o maior algarismo...
Então descartas o 8 do array e copias para a primeira posição de um novo array que declaras com o mesmo tamanho do array original
[8 ... ... ... ... ... ... ... ...]
Aplicas novamente o algoritmo mas desta vez ao 1º array sem o 8, uma vez que o descartaste... e irás deduzir que o maior número será o 6... descartas o 6 do array e copias para o novo array
[8 6 ... ... ... ... ... ... ...]
e por aí adiante... até preencheres o array final com os números todos os números do array original... neste caso eram 9...
Agora tens é que ter cuidado com os casos de igualdade... pq podes ter 2 ou mais algarismos idênticos num array...
Creio que este algoritmo já está definido... e é um algoritmo de sort já conhecido... Não sei se será o mais eficiente... mas é uma ideia
NOTA: eu acho que isto funciona... não tenho a certeza pq nunca implementei!
tens um array de algarismos por exemplo:
[2 3 5 4 1 8 0 3 6]
Sacas a primeira posição do array -> 2
comparas com a segunda -> 3
3 > 2 ? (esta comparação deve ser feita com o código ASCII como o Andromeda disse)
Sim... então guardas o 3...
passas para a terceira posição do array -> 5
5 > 3?
Sim... então guardas o 5...
quarta posição do array -> 4
4 > 5?
Não... ficas com o 5
quinta posição-> 1
1 > 5?
Não... ficas com o 5
sexta posição -> 8
8 > 5?
Sim... ficas com o 8
sétima posição -> 0
...
bla bla bla
Chegas ao fim do array com o 8 guardado... uma vez que é o maior algarismo...
Então descartas o 8 do array e copias para a primeira posição de um novo array que declaras com o mesmo tamanho do array original
[8 ... ... ... ... ... ... ... ...]
Aplicas novamente o algoritmo mas desta vez ao 1º array sem o 8, uma vez que o descartaste... e irás deduzir que o maior número será o 6... descartas o 6 do array e copias para o novo array
[8 6 ... ... ... ... ... ... ...]
e por aí adiante... até preencheres o array final com os números todos os números do array original... neste caso eram 9...
Agora tens é que ter cuidado com os casos de igualdade... pq podes ter 2 ou mais algarismos idênticos num array...
Creio que este algoritmo já está definido... e é um algoritmo de sort já conhecido... Não sei se será o mais eficiente... mas é uma ideia
NOTA: eu acho que isto funciona... não tenho a certeza pq nunca implementei!