| 
 | 
 
30鱼币 
- a=np.array([[1,2,3,4],
 
 -             [5,6,7,8],
 
 -             [9,10,11,12]])
 
  
- b=np.array([[6,7],
 
 -             [10,11]])
 
  复制代码 
 
a,b内的数据为随机的 
用什么算法能最快的从a中查找到b
 本帖最后由 阿奇_o 于 2022-9-29 15:03 编辑 
怎么才算最快呢?。。不知道是不是“最快”,仅供参考:
 - stmt = """\
 
 - a=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
 
 - b=np.array([[6,7],[10,11]]) 
 
 - def isInA(a, b): 
 
 -     af, bf = a.flatten(), b.flatten() 
 
 -     #return sum(map(lambda _: _ in af, bf)) == len(bf) 
 
 -     return all(map(lambda _: _ in af, bf))
 
  
- isInA(a, b)
 
 - """
 
 - import timeit as t
 
 - t.timeit(stmt, setup="import numpy as np", number=1000)
 
 - 0.019886699999915436
 
  复制代码 
ps:如果改为 随机创建类似大小的a,b,大概要 0.04 秒   (当然还要看你的a,b具体是怎样的范围条件,以及硬件资源)
  
 
 
 |   
 
 
最佳答案
查看完整内容 
怎么才算最快呢?。。不知道是不是“最快”,仅供参考:
ps:如果改为 随机创建类似大小的a,b,大概要 0.04 秒   (当然还要看你的a,b具体是怎样的范围条件,以及硬件资源) 
 
 
 
 
 
 
 |