🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 整数集合(Intset) 一,结构 ![](https://img.kancloud.cn/d9/37/d937a0fbee1c6019339519b498bcab7c_901x288.png) ![](https://img.kancloud.cn/b4/b6/b4b64c51e9b405f7e13b867a2b3dbc42_1000x299.png) * **encoding**:contents数组中元素的类型,有 INTSET\_ENC\_INT16、INTSET\_ENC\_INT32 和 INTSET\_ENC\_INT64 三种,分别表示contents数组中元素类型为 int16\_t(16位二进制)、int32\_t 和 int64\_t 类型。 * **contents**:整数集合的每个元素都是contents数组的一个数组项,各个项在数组中按值的大小从小到大有序地排列,数组中不包含重复项。 * **length**:记录了整数集合包含的元素数量。 二,整数集合的升级 1.如果我们想要添加一个新元素到整数集合里面,但是新元素的类型比整数集合原有的元素类型都要长时,我们就要对整数集合进行升级,然后才能将新元素添加到整数集合里面 2.升级整数集合并添加新元素共分为三步进行:** 1)根据新元素的类型,扩展整数集合底层数组的空间大小,并为新元素分配空间。 2)将底层数组现有的所有元素都转换成与新元素相同的类型,并将类型转换后的元素继续维持底层数组的有序性质不变。 3)将新元素添加到底层数组里面 ![](https://img.kancloud.cn/86/9e/869ea6d8b5cb3d15a4f062c4fc6e6e75_938x607.png)