Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python的长向量中查找低于某个值的最大值_Python_Vector_Max_Min - Fatal编程技术网

在python的长向量中查找低于某个值的最大值

在python的长向量中查找低于某个值的最大值,python,vector,max,min,Python,Vector,Max,Min,嗨,我有一个很长的numpy向量(1000000+)maxy1充满了整数。向量按升序排序。现在我还有另一个整数val。n现在我想在val 我所做的是: idx=maxy1[np.其中(maxy1

嗨,我有一个很长的numpy向量(1000000+)
maxy1
充满了整数。向量按升序排序。现在我还有另一个整数
val
。n现在我想在
val
我所做的是:

idx=maxy1[np.其中(maxy1

但是太慢了,我不得不重复这个操作10000次,占用了94%的运行时间。有没有加快速度的想法?

对于这类任务,我建议您使用:

输出

6
从文件中:

二进制搜索用于查找所需的插入点


二进制搜索在最坏情况下的性能为O(logN)(参见维基百科)而不是当前的线性O(N)。

很好的解决方案,它的速度只快了4倍:)
6