跳到主要内容

range_array

简介

纯GS实现的“范围化”的数组,用于储存大量(连续)的整型值。范围数组储存的是“区间”,在数据量较大且数据多为连续时可以节省空间和运行时间

样例

组件接口

range_array.gs

函数原型函数作用
bool array.range_exist(array range_arr, int from_v, ...)检查范围数组是否完全包含给定区间
bool array.range_search(array range_arr, int from_v,...)检查范围数组中是否存在给定区间内的任意值
bool array.range_add(array range_arr, int from_v,...)向范围数组中添加一个区间,如果给定区间与范围数组存在重叠,则写入失败(除非指定强制写入)
bool array.range_add_range(array range_arr, array another_range_arr, bool force = false)合并一个范围数组,如果两个范围数组存在重叠,则写入失败(除非指定强制写入)
bool array.range_add_list(array range_arr, array list, bool force = false)合并一个普通数组,如果普通数组中的任意值已经包含于范围数组,则写入失败(除非指定强制写入)
void array.range_del(array range_arr, int from_v,...)从范围数组中移除一个区间内的所有值
array array.range_to_odinary_array(array range_arr)将一个范围数组转化为普通数组