asp下几种常用排序算法

来源:asp之家 时间:2011-04-18 10:33:00 

 

<% 

Dim aData 
aData = Array(3,2,4,1,6,0) 

Call ResponseArray(aData, "原来顺序") 
Call ResponseArray(SelectSort(aData), "选择排序") 
Call ResponseArray(QuickSort(aData), "快速排序") 
Call ResponseArray(InsertSort(aData), "插入排序") 
Call ResponseArray(BubbleSort(aData), "冒泡排序") 


'选择排序 
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 


'快速排序 
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 


'冒泡排序 
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 


'插入排序 
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 

'输出数组 
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 
%>

标签:asp,排序
0
投稿

猜你喜欢

  • Scrapy项目实战之爬取某社区用户详情

    2022-04-16 11:36:31
  • js 浏览本地文件夹系统示例代码

    2024-04-17 09:48:23
  • 使用Python处理Excel表格的简单方法

    2023-12-07 08:05:04
  • python实现从字典中删除元素的方法

    2023-11-10 17:26:33
  • Python运算符的应用超全面详细教程

    2023-08-20 18:24:56
  • 如何在一个广告旗帜里轮番显示时间长度不一的不同广告?

    2010-06-26 12:35:00
  • 用asp实现的代码批量修改程序

    2007-09-24 13:31:00
  • python中的单下划线与双下划线以及绝对导入与相对导入

    2021-09-01 06:26:59
  • Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)

    2023-04-27 13:37:46
  • python数据结构的排序算法

    2021-03-11 04:04:10
  • SQL server 表数据改变触发发送邮件的方法

    2024-01-23 02:15:48
  • Python基础教程之if判断,while循环,循环嵌套

    2023-11-05 12:56:07
  • Python 日志管理模块Loguru的用法小结

    2023-02-22 15:45:16
  • pyqt5 使用label控件实时显示时间的实例

    2021-01-29 14:54:17
  • 彻底解决MySQL使用中文乱码的方法

    2024-01-22 02:05:28
  • 15个用户体验设计剖析

    2010-05-11 16:43:00
  • scipy.interpolate插值方法实例讲解

    2022-08-08 21:23:05
  • MySQL GRANT用户授权的实现

    2024-01-19 16:56:12
  • Python创建xml文件示例

    2023-03-08 22:41:45
  • 总结Python编程中函数的使用要点

    2021-03-15 01:49:52
  • asp之家 网络编程 m.aspxhome.com