文章探索:   分类:    关键字:  
  + 栏目导航
  + 相关文章
asp中有关字符编码转换的几个函数
绝妙的asp生成静态页面html函数
Asp计算页面执行时间
一个简单的用存储过程分页
将asp页面转换成htm页面
ASP网站漏洞解析及黑客入侵防范方法
URL编码与SQL注入
几种常用排序算法(asp)
ASP调用带参数存储过程的几种方式
实用的ASP连接数据库的函数
ASP如何获取真实IP地址
ASP中怎么实现SQL数据库备份、恢复
判断Cookies是否处于开启状态
怎样才能将服务器端文件夹下的文件,..
几行Asp代码实现防止表单重复提交
用ASP设计网站在线人数统计程序
asp论坛在线人数统计研究
如何用ASP远程在数据库中创建Table
用ASP调用SQL Server的视图和存储过程
Asp与XML的关系
ASP读取EXCEL
在ASP中使用Oracle数据库技巧
一个通过web.Mail发送邮件的类
几种打开记录集方式的比较
购物车范例(购物车页面 )
如何使用FSO搜索硬盘文件
GB码和BIG5码的互换技术
用ASP开发WEB日期选择器
一个投票系统的源程序(coveryourasp.c..
列出服务器上的打印机


技术教程 -> ASP教程 ->  
几种常用排序算法(asp)
来源:转载   人气:1631   录入时间:2007-11-8
    <%
   
   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
   
   %>
   




Copyright(C)2007-2021 广州市佳沛数码科技有限公司 版权所有
公司地址: 广州市荔湾区东漖北路560号511室
电话:020-81803473 传真:020-81544987