VBS的快速排序

上一篇 / 下一篇  2008-06-11 18:21:44 / 个人分类:VBS

下面是VBS的快速排序代码,适合数字和字符串数组:

Public Function QSort(ByRef ReArr, ByVal head,ByVall tail)
ReArr是待排序数组,head和tail是该数组的最小下标和最大下标
Dim lef,rig
Dim pivot

If head<tail,Then
lef=head
rig=tail
pivot=ReArr(lef)
While (lef<>rig)

While (lef<rig and ReArr(rig)>=pivot)
rig=rig-1
Wend
If lef<rig Then
ReArr(lef)=ReArr(rig)
lef=lef+1
End If


While (lef<rig and ReArr(lef)<=pivot)
 lef=lef+1
Wend

If lef<rig Then
ReArr(rig)=ReArr(lef)
 rig=rig-1
End If
Wend

ReArr(lef)=pivot
call QSort(ReArr,head,lef-1)
call QSort(ReArr,lef+1,tail)

End If
End Function


TAG: VBS

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-28  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 2924
  • 日志数: 3
  • 建立时间: 2007-10-23
  • 更新时间: 2010-04-29

RSS订阅

Open Toolbar