У меня динамически обновляемый массив (меняется каждую секунду). и состоит из значений от 1 до 9. Мне дано задание выяснить, движутся ли максимальные значения слева направо или справа налево.
Для этого входа выход должен быть слева направо. Данные поступают от датчика и обновляют массив каждую секунду.
[1 , 3 , 4 , 2 , 1 , 0 , 0 ] [1 , 1 , 4 , 8 , 4 , 0 , 0 ] [1 , 1 , 2 , 3 , 9 , 0 , 0 ] [4 , 0 , 0 , 9 , 9 , 0 , 0 ] [4 , 0 , 0 , 0 , 3 , 8 , 3 ] [6 , 3 , 4 , 0 , 9 , 9 , 8 ]
Единственный способ, которым я могу придумать, - это взять 3 самых больших элемента в массиве и суммировать и сохранить их индексы. Если это число увеличивается более чем в 2 раза, то мы уходим слева направо или, если оно уменьшается, мы имеем право слева движение
Есть ли другой способ добиться этого? Если вы пишете код, Python поможет. Спасибо.
Усредните индексы максимумов в каждом массиве, а затем сравните эти средние.
Вам необходимо определить «перемещение слева направо» в терминах, которые вы можете запрограммировать, например, index_average[x] < index_average[x+1] < index_average[x+2]
index_average[x] < index_average[x+1] < index_average[x+2]