统计数组中比邻元素小的数组元素的个数
时间: 2023-04-18 11:03:50 浏览: 173
Java统计数组中相同元素个数
5星 · 资源好评率100%
当统计一个数组中比某个元素小的元素个数时,可以使用以下方法:
1. 遍历整个数组,计算比给定元素小的元素个数,时间复杂度为 O(n)。
2. 如果需要进行多次查询,可以使用排序和二分查找。首先对数组进行排序,然后对于每个查询元素,使用二分查找找到它在排序后的数组中的位置,该位置之前的元素即为比它小的元素。时间复杂度为 O(nlogn + mlogn),其中 n 为数组长度,m 为查询次数。
以下是第一种方法的 Python 代码示例:
```
def count_smaller_elements(arr, elem):
count = 0
for i in range(len(arr)):
if arr[i] < elem:
count += 1
return count
```
例如,对于数组 `[2, 4, 1, 5, 3]`,查询元素 `3`,调用函数 `count_smaller_elements([2, 4, 1, 5, 3], 3)` 将返回 `2`,因为只有 `1` 和 `2` 比 `3` 小。
阅读全文