由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 我也来贡献一G电面吧。
相关主题
怎么找一个数组里面,出现次数是偶数的数?A家新鲜面经--都是经典题
Bloomberg 电面一道电面题,分享下, 这个题应该用哪几个data structure?
贡献Amazon的电面经验问一道题的优化以及时间复杂度
F电面简历怎么写才能吸引人呢
google和twitter的onsite面经请教LeetCode的3Sum
Second round phone interview with eBay一条INTERVIEW题目, TWO SUM的改版, 求最佳答案
求教一个电话簿的设计问题(双向查询 自动提示)leetcode 129
几个Java面试题 (转载)word ladder ii 谁给个大oj不超时的?
相关话题的讨论汇总
话题: 服务器话题: hashmap话题: mid话题: 繁忙话题: 空闲
进入JobHunting版参与讨论
1 (共1页)
e***s
发帖数: 799
1
做一个负载平衡器的类,构造函数输入N,就初始化N个空闲的服务器,实现三个方法,
1.标记一个服务器为繁忙服务器;2.释放一个繁忙服务器;3.随机找一个空闲服务器,
f*******t
发帖数: 7549
2
bless。数据结构怎么选?
e***s
发帖数: 799
3
这题理论上跟,“设计一个数据结构,add(p), delete(p), findRandom(), 都用O(1)
”是一道题,但是他没说要求O(1),只是要我做完后分析复杂度。
最后反正就是ArrayList + HashTable

【在 f*******t 的大作中提到】
: bless。数据结构怎么选?
p*****2
发帖数: 21240
4
数组就行了吧 n使固定的

【在 e***s 的大作中提到】
: 这题理论上跟,“设计一个数据结构,add(p), delete(p), findRandom(), 都用O(1)
: ”是一道题,但是他没说要求O(1),只是要我做完后分析复杂度。
: 最后反正就是ArrayList + HashTable

f*******t
发帖数: 7549
5
是的,我也想到这题了,但一时想不起来怎么做

【在 e***s 的大作中提到】
: 这题理论上跟,“设计一个数据结构,add(p), delete(p), findRandom(), 都用O(1)
: ”是一道题,但是他没说要求O(1),只是要我做完后分析复杂度。
: 最后反正就是ArrayList + HashTable

e***s
发帖数: 799
6
二爷,我也一开始也是数组,但是但一个数组怎么样使findRandom() O(1)呢?

【在 p*****2 的大作中提到】
: 数组就行了吧 n使固定的
x*******6
发帖数: 262
7
这个跟设计一个类,支持add delete getRandom时间复杂度为O(1)是一个套路吧,用一
个hashmap和一个array
p*****2
发帖数: 21240
8

数组和ArrayList有啥区别呀?对于这道题来说?

【在 e***s 的大作中提到】
: 二爷,我也一开始也是数组,但是但一个数组怎么样使findRandom() O(1)呢?
j******2
发帖数: 362
9
能否再提示下hashmap怎么支持constant time random()?

【在 x*******6 的大作中提到】
: 这个跟设计一个类,支持add delete getRandom时间复杂度为O(1)是一个套路吧,用一
: 个hashmap和一个array

j******2
发帖数: 362
10
为啥不能用vector?
相关主题
Second round phone interview with eBayA家新鲜面经--都是经典题
求教一个电话簿的设计问题(双向查询 自动提示)一道电面题,分享下, 这个题应该用哪几个data structure?
几个Java面试题 (转载)问一道题的优化以及时间复杂度
进入JobHunting版参与讨论
p*****2
发帖数: 21240
11

看看我的博客吧。
http://blog.sina.com.cn/s/blog_b9285de20101gx01.html

【在 j******2 的大作中提到】
: 能否再提示下hashmap怎么支持constant time random()?
c********t
发帖数: 5706
12
有区别,数组固定长度,删除要重新初始化一个新的数组
这题要用ArrayList,删除尾巴吧

【在 p*****2 的大作中提到】
:
: 看看我的博客吧。
: http://blog.sina.com.cn/s/blog_b9285de20101gx01.html

p*****2
发帖数: 21240
13

为什么一定要删除?

【在 c********t 的大作中提到】
: 有区别,数组固定长度,删除要重新初始化一个新的数组
: 这题要用ArrayList,删除尾巴吧

f*******t
发帖数: 7549
14
看你代码后想起来了。要是面试时碰到这种本来会做的题却怎么都想不起最优解,那真
是悲催

【在 p*****2 的大作中提到】
:
: 为什么一定要删除?

j*****y
发帖数: 1071
15
感觉可以用长度为 N的一个array
用一个 index mid 来 表示 mid 左边是繁忙的,mid右边是空闲的,
比如 N = 5, mid = 2, 那么 A[0], A[1], A[2] 是繁忙的, A[3], A[4]是空闲的.
下面用 hashmap 来记录 某个 服务器 j 所在的 index i: hashmap(j) = i;
标记服务器j为 繁忙服务器, 先 check hashmap(j) 是否 <= mid, 是的话,表明
j 是繁忙的, 不用做什么。 否则, j 是空闲的,
int x = hashmap(j);
swap(A[mid + 1], A[x]);
hashmap(A[x]) = x;
hashmap(j) = mid + 1
mid ++;
释放一个繁忙的服务器方法类似
随机返回一个空闲的服务器。
int x = random(mid + 1, N -1);
return A[x];

【在 e***s 的大作中提到】
: 做一个负载平衡器的类,构造函数输入N,就初始化N个空闲的服务器,实现三个方法,
: 1.标记一个服务器为繁忙服务器;2.释放一个繁忙服务器;3.随机找一个空闲服务器,

j*****y
发帖数: 1071
16
而且这个hashmap用 direct access table实现就行了

【在 j*****y 的大作中提到】
: 感觉可以用长度为 N的一个array
: 用一个 index mid 来 表示 mid 左边是繁忙的,mid右边是空闲的,
: 比如 N = 5, mid = 2, 那么 A[0], A[1], A[2] 是繁忙的, A[3], A[4]是空闲的.
: 下面用 hashmap 来记录 某个 服务器 j 所在的 index i: hashmap(j) = i;
: 标记服务器j为 繁忙服务器, 先 check hashmap(j) 是否 <= mid, 是的话,表明
: j 是繁忙的, 不用做什么。 否则, j 是空闲的,
: int x = hashmap(j);
: swap(A[mid + 1], A[x]);
: hashmap(A[x]) = x;
: hashmap(j) = mid + 1

r******k
发帖数: 46
17
这个方法才是这题的正解啊

【在 j*****y 的大作中提到】
: 感觉可以用长度为 N的一个array
: 用一个 index mid 来 表示 mid 左边是繁忙的,mid右边是空闲的,
: 比如 N = 5, mid = 2, 那么 A[0], A[1], A[2] 是繁忙的, A[3], A[4]是空闲的.
: 下面用 hashmap 来记录 某个 服务器 j 所在的 index i: hashmap(j) = i;
: 标记服务器j为 繁忙服务器, 先 check hashmap(j) 是否 <= mid, 是的话,表明
: j 是繁忙的, 不用做什么。 否则, j 是空闲的,
: int x = hashmap(j);
: swap(A[mid + 1], A[x]);
: hashmap(A[x]) = x;
: hashmap(j) = mid + 1

1 (共1页)
进入JobHunting版参与讨论
相关主题
word ladder ii 谁给个大oj不超时的?google和twitter的onsite面经
LeetCode 的 4 sum 问题 如何用hash table做呢?Second round phone interview with eBay
关于Hash_map求教一个电话簿的设计问题(双向查询 自动提示)
上个Yahoo电面面经, 给恶心坏了。。几个Java面试题 (转载)
怎么找一个数组里面,出现次数是偶数的数?A家新鲜面经--都是经典题
Bloomberg 电面一道电面题,分享下, 这个题应该用哪几个data structure?
贡献Amazon的电面经验问一道题的优化以及时间复杂度
F电面简历怎么写才能吸引人呢
相关话题的讨论汇总
话题: 服务器话题: hashmap话题: mid话题: 繁忙话题: 空闲