求解一个数组排序
时间:2011-09-03
来源:互联网
一个数组排序 {mp3:33,mp4:2,phone:44,mp6:3} 这个数据是已逗号分隔,然后按照冒号后面的数字排序
最终结果是{phone:44,mp3:33,mp6:3,mp4:2}
请问如何解决这个超级难题啊,asp代码 谢谢,如果解决我继续加分,这个对我很重要,是一个大小排序问题
最终结果是{phone:44,mp3:33,mp6:3,mp4:2}
请问如何解决这个超级难题啊,asp代码 谢谢,如果解决我继续加分,这个对我很重要,是一个大小排序问题
作者: Jamie2012 发布时间: 2011-09-03
不懂ASP
不过这个需求在C#中实现起来很容易
不过这个需求在C#中实现起来很容易
作者: q107770540 发布时间: 2011-09-03
拆分成键和值的2个数组,对值排序
VBScript code
VBScript code
s="{mp3:33,mp4:2,phone:44,mp6:3}" arr=split(replace(replace(s,"{",""),"}",""),",") idx=ubound(arr) dim k(),v() redim k(idx),v(idx) '拆封初始化键和值得数组 for i=0 to idx tarr=split(arr(i),":") k(i)=tarr(0):v(i)=cint(tarr(1)) next '快速排序 for i=0 to idx-1 for j=i+1 to idx if v(i)<v(j) then t=v(i):v(i)=v(j):v(j)=t'交换值 t=k(i):k(i)=k(j):k(j)=t'同时交换键 end if next next s="" '重新组合成字符 for i=0 to idx s=s&","&k(i)&":"&v(i) next s="{"&right(s,len(s)-1)&"}" response.write s
作者: showbo 发布时间: 2011-09-03
HTML code
<% Dim x, y() x = Split("mp3:33,mp4:2,phone:44,mp6:3", ",") ReDim y(2, UBound(x)) For i = 0 To UBound(x) y(0, i) = i y(1, i) = Left(x(i), InStr(x(i), ":") - 1) y(2, i) = Right(x(i), Len(x(i)) - InStr(x(i), ":")) next z="" for i=0 to ubound(x)-1 for j=i+1 to ubound(x) if y(2,i)<y(2,j) then t1=y(2,i) y(2,i)=y(2,j) y(2,j)=t1 t1=y(1,i) y(1,i)=y(1,j) y(1,j)=t1 end if next z=z & y(1,i) & ":" & y(2,i) & "," next response.write left(z,len(z)-1) %>
作者: qianjin036a 发布时间: 2011-09-03
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28