因为工作原因,开始学习java语言,对java基础补习。
hashMap,使用哈希算法,可能h(key1), h(key2)得到的结果相同,导致冲突出现,解决冲突的方法有很多,使用链接法,除/乘,多次探查来消除冲突,在java jdkHashMap中,看到了红黑树的影子,我想hashMap应该是使用链接法,在有冲突的情况下,链接到(链表)或者红黑树来解决。红黑树比普通的平衡二叉树,在插入,删除效率更高些,查询速度可能不如普通平衡二叉树,但综合来讲,使用红黑树,执行效率很好。
因为工作原因,开始学习java语言,对java基础补习。
hashMap,使用哈希算法,可能h(key1), h(key2)得到的结果相同,导致冲突出现,解决冲突的方法有很多,使用链接法,除/乘,多次探查来消除冲突,在java jdkHashMap中,看到了红黑树的影子,我想hashMap应该是使用链接法,在有冲突的情况下,链接到(链表)或者红黑树来解决。红黑树比普通的平衡二叉树,在插入,删除效率更高些,查询速度可能不如普通平衡二叉树,但综合来讲,使用红黑树,执行效率很好。