Массив Python ищет непрерывный максимальный индекс подмассива

#python #arrays

#python #массивы

Вопрос:

Я впервые готовился к вопросам интервью перед вопросом python и наткнулся на соглашение в массивах и не нашел его в документах python, чтобы понять, почему это работает. В цикле оператор :

Обновить Массив использует внутренний цикл для печати наибольшего раздела. Вопрос заключается в индексации, поскольку диапазон, по-видимому, выходит за рамки, просматривая i j? Что бы xrange в этом цикле не использовался, поскольку он имеет лучшую структуру?

 max = 0
for i in range(n - k   1):
    max = arr[i]
    for j in range(1, k):
        if arr[i   j] > max:
            max = arr[i   j]
    print(str(max)   " ", end = "")
  

Я не понимаю, что такое arr [i j]? Я думаю, что он просто сохраняет сумму, но когда он возвращается в первый цикл, он возвращается к arr [i], поэтому я не понимаю, как это сохраняет точность наибольшей суммы при перемещении по массиву, не видя никаких описаний использования внутренней скобки?
https://practice.geeksforgeeks.org/problems/maximum-index3307/1

Ответ №1:

Я думаю, что он находит наибольшую сумму, а затем просто печатает ее. Затем он «удаляет» левый индекс и делает это снова. Но в основном он не сохраняет сумму, он просто печатает ее.

Для подмассива [4, 3, 1, 4, 2]

выходные данные (отпечатки) будут следующими: 7 6 6 6

Комментарии:

1. Я добавил оператор к вопросу, поэтому проверьте изменения в обновленном сообщении.