Уведомления

Группа в Telegram: @pythonsu

#1 Июль 12, 2022 23:28:05

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

зы эээ не делайте так как это шутка
предупреждать надо



Офлайн

#2 Июль 12, 2022 23:34:13

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

сорян есть у меня эта бесячяя любовь к … к … короче напишут подумают уточнят передумают еще раз что то )
такое в общем ) а вот так ж) да нет же вот ;\



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Июль 13, 2022 00:19:22)

Офлайн

#3 Июль 13, 2022 10:17:49

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

хмм …

 a = [91, -32, 67, -4, -91, 63, 56, 40, -45, 72, 0]
b = 0
def my_sort(x):
    global b
    b += 1
    if x > 0:
        return True
    else:
        return False
a.sort(key=lambda x: my_sort(x)) #?
print(f'a = {len(a)}\noperations = {b}')
таки O(n) (я правильно понимаюя резултат этого теста?)
 a = 11
operations = 11
мы же не будем считаать что в функции? да?



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Июль 13, 2022 11:13:13)

Офлайн

#4 Июль 13, 2022 11:55:27

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

AD0DE412
я правильно понимаюя резултат этого теста?
не правильно
my_sort вычисляется один раз для каждого элемента, при повторном обращении к тому же элементу берется уже посчитанное значение, то есть алгоритм предполагает, что значения элементов не изменяются в процессе сортировки.



Офлайн

#5 Июль 13, 2022 12:17:48

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

FishHook
при повторном обращении к тому же элементу берется уже посчитанное значение
это как проход то по элементам один
.. или нет?
зы тут же сортировка по 0 а не по значению элементов эээ к друг другу

просто обясните в чем ошибка в расуждениях плз



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Июль 13, 2022 12:26:02)

Офлайн

#6 Июль 13, 2022 12:37:04

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

AD0DE412
ты посчитал не количество проходов, а количество вызовов функции my_sort. Эта функция вычисляется только один раз при обращении к элементу, грубо говоря только в первый проход, а во второй и последующие алгоритм сортировки функцию не вызывает, потому что считает, что её результат измениться не может и использует значение посчитанное на первом проходе. Это не делает сам алгоритм сортировки каким-то другим



Офлайн

#7 Июль 13, 2022 12:39:46

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

ясно спсб



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

#8 Июль 13, 2022 12:43:30

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

просто чет вдруг в это поверелось
в это

Algorithm Python’s Timsort Algorithm имеет o (n log n) сложность времени в худшем случае и o (n) лучшее сложность времени, если список уже в значительной степени отсортирован. Это также имеет отличное Результаты тестов – Они превосходят многие из лучших алгоритмов сортировки в мире на реальных входных данных.
и … а как реално увидеть сколко раз я прохожу по списку во время сортировки



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Июль 13, 2022 12:49:03)

Офлайн

#9 Июль 13, 2022 12:55:04

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

AD0DE412
так это многие алгоритмы сортировки умеют
https://en.wikipedia.org/wiki/Sorting_algorithm



Отредактировано FishHook (Июль 13, 2022 12:58:27)

Офлайн

#10 Июль 13, 2022 12:56:20

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Убрать из списка все отрицательные числа и вывести список

AD0DE412
и … а как реално увидеть сколко раз я прохожу по списку во время сортировки
могу только посоветовать пропатчить исходники питона, по-другому наверное не выйдет



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version