黑马程序员技术交流社区
标题:
集合框架中的哈希函数
[打印本页]
作者:
java.love
时间:
2013-5-2 21:18
标题:
集合框架中的哈希函数
哈希表哈希函数,二叉树,链表,线性表这些在编程中都是怎么区别和应用的,链表适用于那种插入删除频繁的还是线性表适用于这种?有点搞混了。。求解答
作者:
朱安柱
时间:
2013-5-2 22:24
TreeSet集合,底层的数据结构是二叉树,它可以对set集合中的元素进行排序。链表适合于插入,删除频繁的操作,而线性表适合有查找(因为有索引,ArrayList,和Array都是数据结构中线性表的实现)。
作者:
吴建昆
时间:
2013-5-2 23:58
二楼说的全面而又简洁干练,我补充点,见笑了
使用TreeSet集合,对set集合中的元素进行排序时,集合中的元素对象得实现comprable接口,要不会就会报异常。
作者:
丁岩
时间:
2013-5-3 14:44
ArrayList:底层用的是数组数据结构,特点:查询速度很快,但是增删稍慢
LinkedList:底层用的是链表数据结构。特点:增删很快,查询速度稍慢,线程不同步
Vector:底层是数组数据结构,线程同步,被ArrayList淘汰
Set:无序,不可以重复元素
HashSet:数据结构是哈希表,线程是非同步的,保证元素唯一性的原理是:hashCode是否相同,如果相同还会继续判断equals方法,是否为true
TreeSet:可以对Set集合中元素进行排序,底层数据结构是二叉树
保证元素唯一性依据:compareTo 方法 return 0
作者:
黄玉昆
时间:
2013-5-3 22:15
如果仍有问题,请继续追问,如果问题已解决,请将分类改为已解决,谢谢
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2