python - Python 查找给定数组的所有子数组。(我犯了什么错误)
问题描述
def findSubarray(self, arrayList):
newArray = []
for i in range(len(arrayList)):
for n in range(i, len(arrayList)):
newArray.append(arrayList[i:n])
print(newArray)
我尝试的输入是 [1,-1,3,5,7]。但是输出太错误了,所有的子数组都没有最后一个元素7,不知道我做错了什么?
解决方案
请注意arrayList1[i:n]
不包括n
索引。例如: arrayList1:3]
将只考虑1
和2
索引和输出[-1, 3]
尝试:添加n+1
def findSubarray( arrayList):
newArray = []
for i in range(len(arrayList)):
for n in range(i, len(arrayList)):
newArray.append(arrayList[i:n+1])
print(newArray)
findSubarray( arrayList=[1,-1,3,5,7])
推荐阅读
- django - Django - 从数据库动态构建表单字段
- sql - Oracle 10g sql查询
- python - 相当于 R jupyter notebook 的自动重载
- node.js - NodeJS + Fedora 32 拒绝连接
- php - 在php中的字符之间从字符串中分离值
- python - 使用 Keras 进行图像分类 - 猫和狗示例错误
- javascript - 我该怎么做才能看到“文本已保存”。在我的模式上点击提交后?
- bash - 批量合并音频和视频+音频文件的脚本
- r - 如何使用 R 中的元包使用 text.addline1 粗体制作额外的文本行?
- sql - Access SQL 查询内部联接中的语法错误