当前位置: 首页 > news >正文

济南建设网站哪里好微信小程序认证入口

济南建设网站哪里好,微信小程序认证入口,做电影网站用什么格式好,wordpress企业免费主题下载定义 整数集合是集合的实现方式之一,当一个集合只包含整数值元素时,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合的底层实现。 整数集合就是存放整数的一个数组,整数集合的结构体定义: typeof struc…

定义

整数集合是集合的实现方式之一,当一个集合只包含整数值元素时,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合的底层实现。
整数集合就是存放整数的一个数组,整数集合的结构体定义:

typeof struct intset {// 编码方式uint32_t  encoding;// 集合元素数量unint32_t length;// 保存元素的数组int8_t contents[]; 
} intset; 

contents数组保存的就是整数元素,这些元素从小到大排列,并且不会有重复项。

我们知道对于int类型,存在多种编码格式,我们最常见的int的编码是32位的,除此之外还有16位、64位等格式。结构体中的encoding属性用来表示当前整数的编码格式。
Redis的整数集合是支持所有的整数类型的,不管是16位还是32位。
常见的int类型的编码:

  • int16,用16位表示一个整型数字,范围是 -32768~~32767
  • int32,用32比特位表示一个整数,也是最常见的,范围是-2147483648~2147483647
  • int64,用32比特位表示一个整数,在常见的编程语言中一般命名为long类型,范围是-2^63 ~~ 2^63-1

升级

每当我们将一个新的元素添加到集合中时,并且新元素的类型比整数集合现有的所有元素的类型都要长时,整数集合就会进行升级
举个例子,当整数集合中的元素 都是32位编码时,此时向整数集合中添加一个64位的整数,此时就会发生元素类型的升级,首先将所有的元素的类型升级到64位,然后将新元素放下。
具体的过程是这三步:

  • 根据新元素类型,扩展整数集合底层数组的空间大小。
  • 将底层数组现有的所有元素转换为与新元素相同的类型,并将类型转换后的元素放到扩容后的数组中的正确位置上,同时维持元素的相对顺序不变。
  • 旧元素迁移完成后,将新元素添加到数组的合适位置。

整数集合升级机制的优点

  1. 提升灵活性:不论是何种格式下的整数,都能放入,不必担心类型异常。
  2. 节约内存:当一个数组既需要保存int16_t,又需要保存int32_t时,不需要一开始直接就申请int32_t的空间,而是在int32_t的元素未放入前,一直保持int16_t的空间,当int32_t放入时才会对数组进行升级。

整数集合是只存在升级操作,不存在降级操作,一旦对数组进行了升级,编码就会一直保持升级后的状态

http://www.yayakq.cn/news/669626/

相关文章:

  • 淮南市潘集区信息建设网站网站运营公司排名
  • 网站服务费算什么费用wordpress 开启维护
  • 网站设计论文结束语手机网站做多宽
  • 扶风网站建设浏阳市网站建设
  • 维修网站源码研究院 网站建设
  • 一站式婚庆公司搭建网站php源码
  • 沧州工商联网站建设山东泰安
  • win10 网站建设软件西宁百度seo
  • 能打开各种网站的浏览器下载合集建设一个公司网站
  • o2o网站开发虚拟网站怎么做
  • 批量发布网站wordpress全景插件
  • 网站模板psdwordpress导入导出
  • 湖南企业建站系统费用彩票网站建设柏
  • 天津市工程建设交易管理中心网站网站后台 批量上传
  • 建设单位经常去哪个网站做微网站公司
  • 网站收录作用python线上编辑器
  • 国外优惠卷网站如何做网页制作的收获与体会
  • 承德做网站优化西安易网信息技术有限公司
  • 注册网站不需要手机验证的企业网站功能模块设计
  • 友链查询站长工具太原网站建设王道下拉惠
  • 做网站用什么电脑好成都网站推广营销
  • 高端网站建设制作什么是网络营销产品策略
  • 上海网站制作衫网页设计学校官网代码
  • 酒类网站建设方案案网站域名是不是网址
  • 国外好的设计欣赏网站网站推广软件免费观看
  • 门户网站框架下载在线制作图片锦集
  • 网站建设课设心得oa办公系统企业
  • 门户网站流程图正品二手手表交易网
  • 网站布局设计理由南里商濮阳网站建设
  • 什么网站可以做外链私人设计工作室前景