在python中,我有一个数组,里面只有1和-1,现在我要找出索引为i的元素在里面连续均为1的索引
时间: 2024-10-07 07:00:46 浏览: 21
在Python中,你可以使用嵌套循环以及条件判断来找到数组中索引i及其之前的连续1的索引。这里是一个简单的示例函数:
```python
def find_continuous_ones(arr, i):
start = i
while start > 0 and arr[start - 1] == 1:
start -= 1
end = i + 1
while end < len(arr) and arr[end] == 1:
end += 1
return (start, end - 1) if end > start else None
# 示例
arr = [1, -1, 1, 1, -1, 1, 1]
i = 2 # 我们查找索引为2的1的连续区间
result = find_continuous_ones(arr, i)
if result is not None:
print(f"连续1的起始和结束索引分别是:{result[0]} 到 {result[1]}")
else:
print("在给定索引处不存在连续的1")
```
这个函数首先检查`start`位置的元素是否为1,如果是则继续向左移动。然后它检查`end`位置的元素是否为1,如果是则继续向右移动。最后返回一个元组,表示从`start`到`end - 1`的连续1的范围。如果没有找到连续的1,则返回None。
阅读全文