全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
已解决
请给一个二维数组按列排序的例子
2022-11-11 23:11

    OnBar(ArrayRef<Integer> indexs)
    {
        If(BarStatus ==2)
        {
            Array<Array<Numeric>> tempArray;
            tempArray = [[1,83],[3,41],[2,55],[6,29]];
            Print("tempArray = " + TextArray(tempArray));
            ArraySort(tempArray, True);
            Print("tempArray = " + TextArray(tempArray));
            // ArraySort为二维数组所有元素排序
            // 如何实现二维数组按第二列排序[29,41,55,83]
        }
    }

kyover

先把二维数组转成一维数组,然后再对一维数组排序

第一步,用for循环提取二维数组里的一维数组元素,然后再用一个for循环提取一维数组元素里的数值元素,这样就能转成一维数组

接下来就直接可以用排序函数对一维数组排序了

2022-11-14 10:25
timinginfo
@kyover

谢谢,已经实现,代码稍微有点复杂

第一步:转一维数组

第二步:用Na1Sort对两个一维数组合并排序

第三步:重新写入二维数组

效果如图:

2022-11-14 15:44
qdjh888888
@timinginfo

能把代码学习一下吗?

2023-08-18 02:38
您未登录,请先 登录注册 后发表评论
顶部