A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© liuxiaoye 中级黑马   /  2016-1-26 22:56  /  480 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

ArrayList是基于数组结构的,所以查询速度比较快,与linkedList对比都是线性结构,而linkedlist是基于链表,所以增删改比较快,注意的是,虽然ArrayList有动态扩容的功能,但是当你对超出范围进行复制依然会出现空指针异常,而实际当中都是既有查询又有插入,而他们两种算法都非常极端,于是hash算法出现了,一个好的hash算法只有他的散列算法设计的好,就会避免解决大量的冲突,他的优势非常明显,于是hashset出现了。还有一种是基于树形结构的,也就是treeset和treemap,他们都是基于二叉排序树的一种--红黑树,treeset底层是用treemap实现,红黑树不同于其他排序树,就是可以根据颜色进行调整,使其处于平衡。其查找效率还是非常乐观,但是树的调平是一个非常耗性能的,所以开发中基本不用。

1 个回复

倒序浏览
~~~~~~~~~~~~~~~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马