Python Найти все подмассивы данного массива. (какие ошибки я сделал) - PullRequest
1 голос
/ 18 февраля 2020
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, интересно, какие ошибки я сделал?

1 Ответ

3 голосов
/ 18 февраля 2020

Обратите внимание, что 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])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...