详解 `np.searchsorted` 函数:用途、参数与场景

详解 np.searchsorted 函数:用途、参数与场景


一、函数的作用

np.searchsorted 是 NumPy 库中的一个函数,用于在已排序的数组中快速找到插入新元素的位置,使插入后数组依然保持有序。
它的核心逻辑是二分查找(时间复杂度为 O(log n)),因此效率远高于线性遍历。


二、函数语法
np.searchsorted(a, v, side='left', sorter=None)
  • 参数说明

    • a:已排序的 1 维数组(若未排序,需配合 sorter 参数)。
    • v:要插入的值(支持标量或数组)。
    • side:插入位置的策略,可选 'left'(默认,返回第一个合适位置)或 'right'(返回最后一个合适位置)。
    • sorter:若 a 未排序,需提供排序后的索引数组(详见下文示例)。
  • 返回值

    • v 是标量,返回插入位置的索引(整数)。
    • v 是数组,返回每个元素插入位置的索引数组。

三、通俗示例
示例 1:基本用法
import numpy as np

arr = np.array([1, 3, 5, 7])

你可能感兴趣的:(Numpy学习,numpy,python,性能优化)