为了账号安全,请及时绑定邮箱和手机立即绑定

如何优化大数据量的for计算?

如何优化大数据量的for计算?

蓝山帝景 2018-07-31 17:23:22
k = [...]d = {}for i in kws:    d.setdefault(i,0)    for j in kws:        if i == j:            continue        if i in j:            d[i] += 1求解如何提供运算速度?
查看完整描述

2 回答

?
慕村225694

TA贡献1880条经验 获得超4个赞

  1. 如果可能的话,优化算法,降低复杂度

  2. 上jit, numba/pypy


查看完整回答
反对 回复 2018-08-02
?
杨魅力

TA贡献1811条经验 获得超6个赞

@pykit.runTime

def parse():

    p = {}

    for k in kws:

        for i in k.split():

            p.setdefault(i,[]).append(k)


    for k in kws:

        r = [set(p[i]) for i in k.split()]

        r = set.intersection(*r)

        d[k] = len(r)-1


kws = [...]

d = {}

d.fromkeys(kws,0)

parse()

研究了一下倒排,速度提高十倍以上

查看完整回答
反对 回复 2018-08-02
  • 2 回答
  • 0 关注
  • 924 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信