Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 April 09

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
надо мне лекции тимофея еще раз посмотреть и законспектировать а то я плыву
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
тут суть в том, что алгоритм может в зависимости от входных данных за разное время отработать - например сортировка
может повезти и вообще на вход уже отсортированный массив подали
тогда сортировка отработает быстро
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
да
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
а может не повезти и она будет работать дольше
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но это не значит ведь что функция не сложна
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но если мы будем рандомные наборы подавать и усреднять время - оно в среднем будет постоянное
и если мы, например знаем что для массивов размера 10 сортировка занимает 1секунду
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
выкидывая выпадающие значения
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и сложность алгоритма сортировки O(N)
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
значит для массивов размером 20 сортировка должна занимать 2с
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
если сортировка, например O(N^2) занимает - тогда 4с
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
для меня это не очевидная связь. опыта мало
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
это даже для тех кто давно программирует не очевидно
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ведь массивы размером 20 могут быть удобно отсортированы уже так что функция их быстро обработает с той же скоростью что массив с 10
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
хотя это один из базовых вообще навыков - уметь оценить сложность асимптотическую функции
хотя-бы экспериментально
скачал вот ты откуда-то с гитхаба функцию которая что-то вычисляет
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
например находит на рентгеновском снимке рак
как понять - насколько она будет долго работать в зависимости от разрешения снимка
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
просто подавать ей на вход картинки с увеличивающимся разрешением и фиксировать время работы
и будет видно - это время растет линейно или экспоненциально
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
а. вот когда под конкретные вещи то тут яснее
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и с большими снимками оно работать не сможет
источник

P

Petya in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
тут уже ясна линейность величины подаваемых значений
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Petya
тут уже ясна линейность величины подаваемых значений
да
источник