由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 请教 HashMap implementation 标准答案。。
相关主题
M家面试,问java一题弱弱的问问intersection, union of two arrays or two sets ?
Amazon 电面G的一道题phone interview
Bloomberg 面经一个实际碰到的问题
请教一道公司面试题5分钟前G的电面
Java的hashcode和equal函数有什么用?yahoo面经
Google电面被拒,郁闷中airbnb就这一道题目么?
Google电面请教个面试题, tree和hashmap的区别
常见的一个电面题实现个hashmap要override哪些method?java
相关话题的讨论汇总
话题: hashmap话题: 标准答案话题: hashcode话题: 函数
进入JobHunting版参与讨论
1 (共1页)
r********7
发帖数: 102
1
这题是基本问题。 但是自己总拿不准怎么做才算正确。 面试官只是说 “HashMap
Implementation”。 我知道要考虑“hash function” "equal"两个函数。但是
1,如何重写这两个函数才算标准。
2, 用什么data structure 存储key 和 value 实现 hashmap呢?
只是说让implement hashmap, 但啥具体信息都没给,很摸不着头脑。
求大牛给个标准答案或者遇到类似XXX Implementation时的解题思路。
n*******p
发帖数: 72
2
去看一下java的标准实现。grepcode.com
z****e
发帖数: 54598
3
底层是数组和链表
数组用来定位
然后每一个位置都是链表
当hashcode一致的时候
就用equals从链表开头挨个往后比较
然后hashcode要定位到数组的位置上去
这个稍微有些难,我也木有细看
r********7
发帖数: 102
4
谢谢解答,挺有道理的。。
您在哪看到的啊? 我想见见源代码。。呵呵

【在 z****e 的大作中提到】
: 底层是数组和链表
: 数组用来定位
: 然后每一个位置都是链表
: 当hashcode一致的时候
: 就用equals从链表开头挨个往后比较
: 然后hashcode要定位到数组的位置上去
: 这个稍微有些难,我也木有细看

z****e
发帖数: 54598
5
openjdk

【在 r********7 的大作中提到】
: 谢谢解答,挺有道理的。。
: 您在哪看到的啊? 我想见见源代码。。呵呵

z****e
发帖数: 54598
6
重写hashcode和equals的标准google一下就有
hashcode最常见的就是找一个prime,一般是31
然后编出hashcode,eclipse可以帮你做这个,右键点击屏幕后慢慢找
然后把你编hashcode的那些变量
作为equals判断的标准,其中只要有一个变量不一样,就不是同一个东西
然后这些编hashcode的变量,就是db里面的pk
1 (共1页)
进入JobHunting版参与讨论
相关主题
实现个hashmap要override哪些method?javaJava的hashcode和equal函数有什么用?
问个Java的HashSet.contains的问题Google电面被拒,郁闷中
有些面试官也是半桶水Google电面
水果电面问题 hashmap 用 sperate chaining 时, array size不够怎么办常见的一个电面题
M家面试,问java一题弱弱的问问intersection, union of two arrays or two sets ?
Amazon 电面G的一道题phone interview
Bloomberg 面经一个实际碰到的问题
请教一道公司面试题5分钟前G的电面
相关话题的讨论汇总
话题: hashmap话题: 标准答案话题: hashcode话题: 函数