Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

hargon

Ordernar vetor

Recommended Posts

<script language=JScript runat=server>
	function SortVBArray(arrVBArray)
	{
		return arrVBArray.toArray().sort().join('\b');
	}
</script>

<%
Function SortArray(arrInput)
		SortArray = Split(SortVBArray(arrInput), Chr(8))
End Function


Dim ar, i, vtemp

ar=array("Urso","Macaco","Cachorro","Hipopotamo","Avestruz","Pato","Rato","Gato","Papagaio")
response.write "Antes da Ordenação:<BR>"

for i = 0 to ubound(ar)
	response.write ar(i) & "<BR>"
next

response.write "<p>"

response.write "Depois da Ordenação:<BR>"
for i = 0 to ubound(ar)
	vtemp = SortArray(ar)
next

for j = 0 to ubound (ar)
	Response.Write vtemp(j)&"<br>"
next

%>

Autor: Lucas_Dragon

Compartilhar este post


Link para o post
Compartilhar em outros sites

um método legal tb é o Bubble Sort

Compartilhar este post


Link para o post
Compartilhar em outros sites

um método legal tb é o Bubble Sort

Manda um exemplo ai se tiver como... me interesso muito em aprender um novo método... acho que pode facilitar a vida... procurei mas não achei e as explicações que tive não foram muito satisfatórias.

 

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

O bubble sort, ou ordenação por flutuação (literalmente "por bolha"), é um algoritmo de ordenação dos mais simples. A idéia é percorrer o vetor diversas vezes, a cada passagem fazendo flutuar para o topo o menor elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.

 

No melhor caso, o algoritmo executa n2 / 2 operações relevantes, onde n representa o número de elementos do vetor. No pior caso, são feitas 2n2 operações. No caso médio, são feitas 5n2 / 2 operações. A complexidade desse algoritmo é de Ordem quadrática. Por isso, ele não é recomendado para programas que precisem de velocidade e operem com quantidade elevada de dados.

 

O algoritmo pode ser descrito em pseudo-código como segue abaixo. V é um VETOR de elementos que podem ser comparados e n é o tamanho desse vetor.

 

BUBBLESORT (V[], n)

1 houveTroca <- verdade # uma variável de controle

2 enquanto houveTroca for verdade faça

3 houveTroca <- falso

4 para i de 1 até n-1 faça

5 se V vem depois de V[i + 1]

6 então troque V e V[i + 1] de lugar e

7 houveTroca <- verdade

 

 

<%
Dim arrValue 
arrValue = Array(12,24,51,24,15,35,15,65,418)

Function BubbleSort(arrInt)
for i = UBound(arrInt) - 1 To 0 Step -1
	for j= 0 to i
		if arrInt(j)>arrInt(j+1) then
			temp = arrInt(j+1)
			arrInt(j+1) = arrInt(j)
			arrInt(j) = temp
		end if
	next
next 
BubbleSort = arrInt
end function

response.write Join(BubbleSort(arrValue),",")

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.