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

论企业网站建设的好处的文献巴中汽车网站建设

论企业网站建设的好处的文献,巴中汽车网站建设,网站系统维护一般多久,wordpress4.3下载ArrayList底层的实现原理是什么 底层数据结构 ArrayList底层是用动态的数组实现的 初始容量 ArrayList初始容量为0#xff0c;当第一次添加数据的时候才会初始化容量为10 扩容逻辑 ArrayList在进行扩容的时候是原来容量的1.5倍#xff0c;每次扩容都需要拷贝数组 添加逻… ArrayList底层的实现原理是什么 底层数据结构 ArrayList底层是用动态的数组实现的 初始容量 ArrayList初始容量为0当第一次添加数据的时候才会初始化容量为10 扩容逻辑 ArrayList在进行扩容的时候是原来容量的1.5倍每次扩容都需要拷贝数组 添加逻辑 确保数组已使用长度size加1之后足够存下下一个数据. ​计算数组的容量如果当前数组已使用长度1后的大于当前的数组长度则调用grow方法扩容原来的1.5倍 确保新增的数据有地方存储之后则将新元素添加到位于size的位置上。​ 返回添加成功布尔值。 ArrayList listnew ArrayList(10)中的list扩容几次 该语句只是声明和实例了一个 ArrayList指定了容量为 10未扩容  如何实现数组和List之间的转换 数组转List String[] strs {aaa,bbb,ccc}; ListString list Arrays.asList(strs); List转数组 ListString list new ArrayListString();list.add(aaa);list.add(bbb);list.add(ccc);String[] array list.toArray(new String[list.size()]); 用Arrays.asList转List后如果修改了数组内容list受影响吗 修改了数组的内容list会受影响因为它的底层使用的Arrays类中的一个内部类ArrayList来构造的集合在这个集合的构造器中把我们传入的这个集合进行了包装而已最终指向的都是同一个内存地址 List用toArray转数组后如果修改了List内容数组受影响吗 修改了list内容数组不会影响当调用了toArray以后在底层是它是进行了数组的拷贝跟原来的元素就没啥关系了所以即使list修改了以后数组也不受影响 ArrayList 和 LinkedList 的区别是什么 底层数据结构 ArrayList 是动态数组的数据结构实现 LinkedList 是双向链表的数据结构实现 操作数据效率 查找时间复杂度都是O(n) 新增和删除时间复杂度是O(n) 内存空间占用 ArrayList底层是数组内存连续节省内存 LinkedList 是双向链表需要存储数据和两个指针更占用内存 线程安全 都不是线程安全的 在方法内使用局部变量则是线程安全的 使用线程安全的ArrayList和LinkedList ListObject syncArrayList Collections.synchronizedList(new ArrayList()); ListObject syncLinkedList Collections.synchronizedList(new LinkedList());二叉搜索树 在树中的任意一个节点其左子树中的每个节点的值都要小于这个节点的值而右子树节点的值都大于这个节点的值,没有键值相等的节点 红黑树 一种自平衡的二叉搜索树(BST) 性质1节点要么是红色,要么是黑色 性质2根节点是黑色 性质3叶子节点都是黑色的空节点 性质4红黑树中红色节点的子节点都是黑色 性质5从任一节点到叶子节点的所有路径都包含相同数目的黑色节点 在添加或删除节点的时候如果不符合这些性质会发生旋转以达到所有的性质 散列表Hash Table 是根据键Key直接访问在内存存储位置值Value的数据结构,利用了数组支持按照下标进行随机访问数据的特性 散列函数计算得到的散列值必须是大于等于0的正整数因为hashValue需要作为数组的下标。 如果key1key2那么经过hash后得到的哈希值也必相同即hash(key1) hash(key2 如果key1 ! key2那么经过hash后得到的哈希值也必不相同即hash(key1) ! hash(key2) 散列冲突 不同的key计算得到的散列值都不同几乎是不可能的 链表法拉链 所有散列值相同的元素我们都放到相同槽位对应的链表中,链表法中的链表如果是红黑树可以防止DDos攻击 HashMap实现原理 底层使用hash表数据结构即数组和链表或红黑树 当我们往HashMap中put元素时利用key的hashCode重新hash计算出当前对象的元素在数组中的下标 存储时如果出现hash值相同的key此时有两种情况 a. 如果key相同则覆盖原始值 b. 如果key不同出现冲突则将当前的key-value放入链表或红黑树中 获取时直接找到hash值对应的下标在进一步判断key是否相同从而找到对应值。 链表的长度大于8 且 数组长度大于64 转换为红黑树减少搜索时间 红黑树拆分成的树的结点数小于等于临界值6个则退化成链表 jdk1.7采用的是拉链法 链表和数组相结合 HashMap的put方法的具体流程 HashMap是懒惰加载在创建对象时并没有初始化数组 在无参的构造函数中设置了默认的加载因子是0.75 讲一讲HashMap的扩容机制 hashMap的寻址算法 计算对象的 hashCode() 再进行调用 hash() 方法进行二次哈希 hashcode值右移16位再异或运算让哈希分布更为均匀 最后 (capacity – 1) hash 得到索引 hashmap在1.7情况下的多线程死循环问题 尾插法
http://www.w-s-a.com/news/77108/

相关文章:

  • 网站服务理念中外商贸网站建设
  • 如何自己建立网站中国建设银行网站忘记密码
  • 什么是a站如何在12366网站上做实名认证
  • 斗蟋蟀网站建设谭谭心怎么建设网站
  • 优秀网站开发商郑州网站建设套餐
  • 做伤残鉴约号网站购物网站建设新闻
  • 黄江网站建设公司自己房子做民宿挂什么网站
  • 手游网站做cpc还是cpm广告号宣武郑州阳网站建设
  • vs连接数据库做网站建立网站
  • 电商网站设计图片素材p2p网站建设石家庄
  • 莲塘网站建设如何文字推广一个婚恋网站
  • 医院网站建设工作汇报WordPress不发邮件了
  • 怎么做外语网站个人网页设计作品ps
  • 网站原型怎么做vps如何建两个网站
  • 商城网站建设源码嘉兴seo计费管理
  • 城乡建设网站证件查询系统wordpress 时间代码
  • php网站建设 关键技术做网站哪家正规
  • 网站开发用什么写得比较好谷歌的英文网站
  • 青岛网站建设公司在哪vivo手机商城
  • 兼职刷客在哪个网站做哪个网站做淘宝客
  • 眼科医院网站开发网络营销特点是什么
  • 提交网站给百度增加wordpress插件
  • 网站建设企业官网体验版是什么Wordpress哪个模板最快
  • 美丽说网站模板湖北可以做网站方案的公司
  • 北京西站进站最新规定建设网站的提成是多少
  • wordpress站点如何加速网站建设描述怎么写
  • 如何免费建造网站免费vi模板网站
  • 商丘做网站多少钱扬州大发网站建设
  • 网站建设哪家性价比高自己做项目的网站
  • 成立一个网站济宁营销型网站建设