一组数组的下标与ID

示例:Vars Array<Numeric> arr; Array<Integer> id; Events OnBar(ArrayRef<Integer> indexs) { arr = [21,22,23,24,25,96,97,28,29,30,31]; id = [0,33,12,3,11,88,66,33,8,9,39]; Commentary(\"未排序 id=\" + TextArray(id) + \",arr=\" + TextArray(arr)); Na1Sort(arr, id, 4, 7, False); Commentary(\"降序排序后 id=\" + TextArray(id) + \",arr=\" + TextArray(arr)); } 输出:未排序 id=[0,33,12,3,11,88,66,33,8,9,39],arr=[21,22,23,24,25,96,97,28,29,30,31]降序排序后 id=[0,33,12,3,66,88,33,11,8,9,39],arr=[21,22,23,24,97,96,28,25,29,30,31]一维数组的下标,就是数组的索引值,引用时用arr[i] 就是下标引用,而ID是什么概念,与下标有什么不同,数组的ID是怎么存储的,如何引用,arr[id] 吗,另外看到一个示例中说 ID是新排序后的原下标索引值, 下标是新排序后的新索引值,就是因为排序才有这两个概念吗,那是否意鼓掌着不经排序的数组下标下标和ID相同呢

id = [0,33,12,3,11,88,66,33,8,9,39];你为啥要用这么奇怪的内容id就是序号,序号难道不是从0开始逐渐加一吗这个id就是原数组的顺序,对原数组进行排序以后,同样也会对id序号数组进行位置变换,这样你就知道原来的元素位置现在排到哪里去了比如[9,7,8]数组对应序号数组[0,1,2],排序完变成[7,8,9],对应序号数组也进行位置变换变成了[1,2,0].这个序号数组的第一个元素1,表示之前排第2的元素7,现在排在了第1个位置了