一个数组里面,有重复的数据,比如:{1,2,2,3,5,5,6,7,8},如何数据去重后变成{1,2,3,4,5,6,7,8}。
这个虚要自己设计算法
怎么设计呢?说说思路呗。
下午三点半直播可以讲讲
//------------------------------------------------------------------------
// 简称: demo20251009
// 名称:
// 类别: 策略应用
// 类型: 用户应用
// 输出: Void
//------------------------------------------------------------------------
Params
//此处添加参数
Vars
array<Numeric> my_array([1,2,2,3,4,4,4,5,5,6,7,8]);
Defs
//此处添加策略函数
Events
//Bar更新事件函数,参数indexs表示变化的数据源图层ID数组
OnBar(ArrayRef<Integer> indexs)
{
array<Numeric> temp_array;
numeric i;
numeric j;
j = 0;
If(BarStatus ==2)
{
for i = 0 to GetArraySize(my_array) - 1
{
If(i == 0)
{
temp_array[j] = my_array[i];
}
Else
{
print(text(i));
If(temp_array[j] <> my_array[i])
{
j = j + 1;
temp_array[j] = my_array[i];
print("tp:"+text(temp_array[j]));
}
}
}
print(TextArray(temp_array));
}
}
//------------------------------------------------------------------------
// 编译版本 2025/10/9 155021
// 版权所有 kyover
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TradeBlazer策略修改和重写的权利
//------------------------------------------------------------------------收到,按你的方法,已解决问题,谢谢老师。
提醒一下,这种去重方式仅能处理经过排序的数组,可以升序可以是降序,没有排序过的会去重失败