aardio - 将稀疏数组变为有序数组

import console; 

var t = {
    [11]={id=11;classId=3;name="张三"};
    [4]={id=4;classId=3;name="张三"};
    [1]={id=1;classId=3;name="张三"};
    [99999999]={id=99999999;classId=3;name="张三"};
    [2]={id=2;classId=3;name="张三"};
    strkey9 = "str999999";
    strkey1 = "str111111";  
}
console.dump("原稀疏数组:",t,"#t获取的成员数:",#t,'\n\n')

var ts = time.tick()
var s,a,b = {},table.range(t);
for(i=a;b;1){
    if t[i]!==null {
        table.push(s,t[i])
    }
}
ts = time.tick()-ts
console.dump("生成一个有序数组(忽略字典成员):",s,"#t获取的成员数:",#s,"耗时:",ts,'\n\n')

var ts = time.tick();
var keys,result={},{};
for(k,v in t){
    if type(k)==="number" ..table.push(keys,k);
}
..table.sort(keys);
for(i=1;#keys;1){
    ..table.push(result,t[keys[i]]);
}
ts = time.tick()-ts
console.dump("生成一个有序数组(忽略字典成员):",result,"#t获取的成员数:",#result,"耗时:",ts,'\n\n')

console.pause();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢光庆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值