<%
Dim aData
AData = array (3, 2, 4, 1, 6, 0)
Call responsearray (aData, "original order ")
Call responsearray (selectsort (aData), "select sort ")
Call responsearray (quicksort (aData), "Quick Sort ")
Call responsearray (insertsort (aData), "insert sort ")
Call responsearray (bubblesort (aData), "bubble sort ")
'Select sorting
Function selectsort (a_data)
Dim I, J, K
Dim bound, T
Bound = ubound (a_data)
For I = 0 to bound-1
K = I
For J = I + 1 to bound
If a_data (k)> a_data (j) then
K = J
End if
Next
T = a_data (I)
A_data (I) = a_data (k)
A_data (K) = T
Next
Selectsort = a_data
End Function
'Quick sorting
Function quicksort (a_data)
Dim I, j
Dim bound, T
Bound = ubound (a_data)
For I = 0 to bound-1
For J = I + 1 to bound
If a_data (I)> a_data (j) then
T = a_data (I)
A_data (I) = a_data (j)
A_data (j) = T
End if
Next
Next
Quicksort = a_data
End Function
'Bubble sorting
Function bubblesort (a_data)
Dim bound
Bound = ubound (a_data)
Dim bsorted, I, T
Bsorted = false
Do While Bound> 0 and bsorted = false
Bsorted = true
For I = 0 to bound-1
If a_data (I)> a_data (I + 1) then
T = a_data (I)
A_data (I) = a_data (I + 1)
A_data (I + 1) = T
Bsorted = false
End if
Next
Bound = bound-1
Loop
Bubblesort = a_data
End Function
'Insert order
Function insertsort (a_data)
Dim bound
Bound = ubound (a_data)
Dim I, j, T
For I = 1 to bound
T = a_data (I)
J = I
Do while T <a_data (J-1) and j> 0
A_data (j) = a_data (J-1)
J = J-1
Loop
A_data (j) = T
Next
Insertsort = a_data
End Function
'Output Array
Sub responsearray (a_data, STR)
Dim s
S = ""
Response. Write "<B>" & STR & ": </B>"
For I = 0 to ubound (a_data)
S = S & a_data (I )&","
Next
S = left (S, Len (S)-1)
Response. Write s
Response. Write "<HR>"
End sub
%>