【发布时间】:2013-02-24 20:13:50
【问题描述】:
您能否协助/请求代码片段以有效排序。 找不到 vbscript 的基数排序 - 二维数组/能够很好地实现。
我的数组的示例结构是:
resultarray(0,1) = "Name1"
resultarray(1,1) = "Score1"
resultarray(2,1) = "Category1"
resultarray(3,1) = "OtherDetail1"
resultarray(4,1) = "OtherDetail1"
resultarray(5,1) = "OtherDetail1"
resultarray(0,2) = "Name2"
resultarray(1,2) = "Score2"
resultarray(2,2) = "Category2"
resultarray(3,2) = "OtherDetail2"
resultarray(4,2) = "OtherDetail2"
resultarray(5,2) = "OtherDetail2"
resultarray(0,3) = "Name3"
resultarray(1,3) = "Score3"
resultarray(2,3) = "Category3"
resultarray(3,3) = "OtherDetail3"
resultarray(4,3) = "OtherDetail3"
resultarray(5,3) = "OtherDetail3"
数组必须根据第二列进行排序,即分数。 行数大约为几百万。 分数将始终为正整数(在不久的将来需要两位小数)。 速度非常重要,因为这必须针对 30 到 40 个不同组的几万到几百万个数字进行。
目前使用 Quicksort 完全来自:
http://www.4guysfromrolla.com/webtech/012799-3.shtml
我在我的实现中交换了行 列,那么这工作正常。 但是慢。 是否值得从现有的 QuickSort 更改排序技术。
我打算稍后使用二分搜索根据分数匹配搜索大约 2000 个元素。
谢谢
【问题讨论】:
标签: algorithm optimization vbscript sorting