m*n
7 楼
虽然算法垃圾一点,但是work的。
def test(data):
dataset = [[n, data.count(n)] for n in set(data)]
for i in xrange(2):
copydataset = copy.deepcopy(dataset)
print list(generator(copydataset))
print '\n'
def generator(dataset):
size = len(dataset)
while dataset:
index = int(random.random()*size)
dataset[index][1] -= 1
char = dataset[index][0]
if not dataset[index][1]:
dataset.pop(index)
size = size - 1
yield char
def test(data):
dataset = [[n, data.count(n)] for n in set(data)]
for i in xrange(2):
copydataset = copy.deepcopy(dataset)
print list(generator(copydataset))
print '\n'
def generator(dataset):
size = len(dataset)
while dataset:
index = int(random.random()*size)
dataset[index][1] -= 1
char = dataset[index][0]
if not dataset[index][1]:
dataset.pop(index)
size = size - 1
yield char
M*x
9 楼
Reservoir Sampling?
z*6
10 楼
freq总和,random(0,freq)之后得数字map回char就好了啊。reservoir sampling是
用于linkedlist而不知道总长度用的
用于linkedlist而不知道总长度用的
m*n
11 楼
要是追问,数据太大内存放不下怎么办。Google会出这么简单的题?其实这是一个云计
算题。
算题。
h*c
14 楼
一开始出现次数是0,概率是0,啥也不出现,成正比,概率返回条件是0.
h*c
15 楼
觉得这是个behav题。
k*a
16 楼
扫描set,将字符出现频率排序, 然后做一个frequency data的数组,
[{0.0, 0.3, a}, {0.3, 0.5, b}, {0.5, 0.6, c}, {0.6, 0.7, d}, ....]
然后随机产生0-1的浮点数,然后找个数组扫。数组最大是256个items
有点无脑?
不知道follow up是什么样子
[{0.0, 0.3, a}, {0.3, 0.5, b}, {0.5, 0.6, c}, {0.6, 0.7, d}, ....]
然后随机产生0-1的浮点数,然后找个数组扫。数组最大是256个items
有点无脑?
不知道follow up是什么样子
b*y
18 楼
为什么不是reservoir sampling?
相关阅读
FG码农在湾区根本买不起房啊阿三经理只招阿三美女真的优势太大了写给因harassment拿了PIP的国女码工(请置顶)今天从SFO坐Lyft到Milbrea马总L5这个算Offer 算 Low吗?决定onsite时候hr manager意见有多大决定权?有没有湾区公司employee的学历统计爸,我考了530分我曾经被老板骚扰过,现在找工作心里总是有阴影是不是没戏了【工作机会】My team is hiring求教,G是不是三次onsite不过就永久小黑屋?借贵地求问 HFT trading firm 的回家作业一般会考点啥,急女生被FLAGM拒没了,谁能帮我看看现在该怎么办?victoria secret 怎么搞的?老板让组里同事自己辞职【内部推荐】推荐Google软件工程师,面试准备建议小语种程序员借贵宝地吐个槽 并诚心寻求建议