Мне нужно подтвердить правильность моего подхода к определению сложности времени и пространства для приведенного ниже алгоритма:
У меня есть входной список, и мы можем взять в качестве примера следующее: [1 100,1, 1,1,100,1,1,100,1], и давайте назовем данный список как стоимость. Я изменяю данный список согласно моему алгоритму ниже
Мой алгоритм:
- L oop по списку (начиная с позиции 2) до конца списка ввода.
- Мы выполняем следующую операцию: стоимость [i] = стоимость [i] + min (стоимость [i-1], стоимость [i-2])
- В конечном итоге мы проверяем последние 2 элемента и взять минимальное значение из последних двух элементов = min = min (последний элемент, второй последний элемент).
Мой подход к вычислению сложности времени: 1. Для шага 1 = O ( n) 2. Для шага 2 = O (1) + O (n) (чтобы вычислить минимум среди двух элементов) 3. Для шага 3 = O (1)
Следовательно, сложность по времени = O (n ) + O (1) + O (n) + O (1) = O (n). Сложность пространства = O (n) [Простое предположение, что для хранения списка потребуется пространство]. Может кто-нибудь, пожалуйста, дайте мне знать, если мой подход для расчета сложностей действителен?
С уважением, Анубхав