zoukankan      html  css  js  c++  java
  • [原创] Set、List、HashMap优缺点比较,高性能集合

      遍历速度 插入删除速度 随机访问速度 备注
    Set 比list多占一个指针的存储空间
    List 必须之前知道数组元素个数,因为申请内存是连续长度明确的
    HashMap 适合海量数据,o(1)的随机访问速度,不是可遍历
    变体Set set的基础上多占一个List的控件,不过各种性能都好
    变体List 插入快不能删除 各种性能都好就是不能有删除操作

    变体Set:SetList,在SetList,保存一个状态(listEnable),调用get(index)方法时,如果listEnable=false,为该SetList简历一个List,用set元素填充List个元素,用List随机访问。如果listEnable=true,直接随机访问list。调用add和delete的时候设置listEnable为false,回收list的空间。这样就有所有的有点,但是存储空间是原来的2倍

    变体List:建立一个足够大的List,这个list只能插入不能删除,一旦数量到达上限,新建一个list二倍容量的list把元素考过去。这样只有不能删除一个缺点,其他优点都有。

  • 相关阅读:
    创建新用户
    发生tcp丢包(拥堵、超时)重传
    centos7装机和初步运维
    论上山和下山哪个费力
    一、Linux简介
    服务器设置FTP
    自定义部署资源服务器
    代码管理工具 Git
    远程连接工具rdcman
    dubbo学习(八)dubbo项目搭建--消费者(服务消费者)
  • 原文地址:https://www.cnblogs.com/wangjixianyun/p/3046447.html
Copyright © 2011-2022 走看看