- 博客(9)
- 收藏
- 关注
原创 哈希表平均查找长度ASL计算
2.冲突次数是多少?从下标为1开始也就是14开始一直比较到下表为13为止 查找结束-记为一次查找失败共比较了13次,同理可推下标为2,3,4..因为哈希函数为 key MOD 13 所以总的情况应该之后 0至12 因为对13取余的结果只能是这是十三种情况。ASL(UNSUCC)=总比较次数/总情况数=1+13+12+...+2/13 别忘记了1。因为 di=1^2,-1^2,2^2,-2^2,3^2,-3^2.. ^2为平方。这里的情况指的是我们查找任意一个数字对13取余 数字落点 的情况有多少种。
2023-11-09 16:38:30
1838
1
原创 Map之Hash_table扩容机制
Hashtable 作为Map实现接口之一与 HashMap 同级别集合,同那样的 HashTable 底层同样维护 table(Hashtable$Node 数组)+链表+红黑树(树化 同HashMap)Set接口实现类HashSet扩容机制_4316的博客-优快云博客初始化 (table表 HashTable$Entry)长度为 11 ,扩容机制为 <<1 +1 ,即 二倍加一 扩容。类似<k,v> k,v均不能为NULL ,否则 报 NullPo...
2022-05-23 19:18:48
360
原创 List接口实现类LinkedList
LinkList 底层维护 双向链表+队列元素可为NULL,存放取出有序,增删快,查找较慢。void linkLast(E e) { final Node<E> l = last; final Node<E> newNode = new Node<>(l, e, null); last = newNode; if (l == null) first = newNode; else l.nex
2022-05-22 15:43:18
130
原创 Set接口实现类HashSet扩容机制
要了解HashSet就需要了解下HashMap,为什么?因为它维护的是一个HashMap,从它的构造器我们就可以明白了public HashSet() { map = new HashMap<>();}先说结论: <1> HashSet 不添加重复元素, 可添加一个NULL<2> HashMap 底层维护 table表(数组)+双向链表+红黑树<3> HashMap 扩容机制:初始化为 16 加载因子 0.75 ....
2022-05-21 15:39:58
1293
原创 理解JAVA之==
每次==都模糊不清,到底是 比较两个的值 还是地址? 我觉得可以总结一句话 如果有基本数据类型== 那就是比较值 比如Integer m=2;int i=2;System.out.println(m==i); // true又比如Integer integer = new Integer(1);int i=1;System.out.println(i==integer); //trueInteger m=2;int i=2;System.out.println(i==m);
2022-05-18 19:16:25
163
原创 java中new String()的思考
最近在复习几个类中String类的问题让我思考再三,现分享出来,欢迎指正初学之时老师肯定讲过 == 和 equals 的区别,就由这个问题展开思考。一般的时候 用equals比较字符串的值,String s1="abc";String s2="abc";System.out.print(s1.equals(s2)); //true==用来比较指向的地址(对象)String s1="abc";String s2="abc";System.out.print(s1==s2); /
2022-05-17 20:27:47
2132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人