战剑网络,网站建设,系统开发,程序设计

搜索Top
常用的几种asp排序方法介绍


搜索关键字:

<%

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

%>


[ 打印本页 ] [ 收藏本页 ]

[上一篇]:网站优化的几个好经验
[下一篇]:已经到底了

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
搜索Top

关于我们 - 联系我们 - 广告业务 - 友情链接 - 网站制作 - 留言板 - 会员注册
All Right Zjm.Net.Cn (zjm Enterprise v3.0)
联系电话:0576-8603312 地址:浙江省台州市经济开发区
技术支持:点击这里给我发消息280610248 业务: 点击这里给我发消息40520767 客服: 点击这里给我发消息441758646
E-mail:zjm@zjm.net.cn 备案证书号:浙ICP备06030047号