Можно еще сделать так чтоб длина масива находилась без ввода пользователя: array = list(map(int,input("Введите список: ").split())) # запрашиваем весь список l = len(array) # сохраняем в переменную длину списка Я считаю ,что это более лучший способ ,например пропадает такая проблема ,если пользователь ввел неправильную длину масива.
Алгоритм избыточен, нужно проверять список, пока есть что менять местами. Такой вариант [4,3,2,6,7,8,9] будет проверятся в 2 раза дольше чем должен. ls = [4,3,2,6,7,8,9] while True: changed = 0 for i in range(len(ls)-1): if ls[i] > ls[i+1]: ls[i], ls[i+1] = ls[i+1], ls[i] changed = 1 if changed == 0: break print(ls)
получается, что если в списке нужно отсортировать к примеру только два первых элемента , а в списке сто или тысяча значений, то первый цикл for после первого прохода, когда сортировка фактически закончена мы будем крутить еще n-1 раз впустую
Мне кажется нужно было назвать - Сортировка пузырем. Ведь вокруг числа образуется мощный толстый защитный пузырь, типо не трож меня, не сравнивай. Или по другому как-то смысл названия объясняется?
а почему бы не сделать вот так x - это либо min() либ max() def f(x, list): lst = [] for i in range(len(list)): list_l = x() lst.append(list_l) list.remove(list_l) list = lst return list
Я ошибаюсь или разница с сортировкой выбором только в том, что в сортировке выбором замена происходит 1 раз за проход. У обоих алгоритмов сложность O(n**2), но в тестах разница в разы. Как я понимаю перестановка элементов в массиве дорогое удовольствие.
Очень классно и доходчиво объяснено, но одного я не понимаю, для чего нужно использовать алгоритмы сортировки, если есть таковые встроенные, а именно функция sorted() и метод списка .sort().
Крутой урок. Хотел спросить, а что если второй цикл заменить на while, получится while mas == mas.sort() получится так же но по моему работать будет быстрее, что думаете по этому поводу?
Артем, почему при замене "for run in range(n-1)" на "while s != sorted(s):" выдает ошибку с первого теста? Результат же сходится. Изначально появилась идея сделать через While
from random import randint N = 10 a = [] for i in range(N): a.append(randint(1, 99)) print(a) i = 0 while i < N - 1: j = 0 while j < N - 1 - i: if a[j] > a[j+1]: a[j], a[j+1] = a[j+1], a[j] j += 1 i += 1 print(a)
Только что оплатил на RUclips со своего телефона подписку Мидл за 150р. Деньги списались. Доступа НЕТ. Это что ? Ни с телефона, ни с компьютера. Нужно чтобы время прошло ? Или как ?
доступ предоставляет youtube и оплатой они занимаются, нужно им в техподдержку писать. вы территориально где кстати находитесь? только не говорите, что в крыму
возникает вопрос, а не проще используя функцию мин() наполнить второй список. по сути кол-во проходов (замен)будет меньше , а именно будет равно кол-ву элементов в списке
я не понимал, почему у меня ошибка, но потома понял, что надо сперва указать количество символов в массиве. Думаю, это можно оптимизировать спомощью len. или я не прав?
Очень подробно и понятно! Благодарю! Ни одного урока на RUclips не понимала- все всегда замудрено рассказывают. А тут всё понятно 👍🏻
уау лучший препод. Все понятно. Вы лучше объясняете прям все шаги. Нам новичкам важно каждый шаг. Продолжайте так
Штрудирую много материала по Python и данный канал на высоте, ни какой воды, все четко и понятно)))
Наконец-то стало понятно, почему так, а не иначе делаем в коде. Огромное спасибо!
Приветствую! Очень понравилась подача материала!!!! ЖАль что только сейчас нашел ваши видеоуроки! Спасибо большое!!! Лайки и подписка!!!
Очень классный урок, очень подробно, очень доходчиво. Большое спасибо за качественный контент!
Отличный урок, с принтами сравнения очень важная строчка для понимания!
Ооо алгоритмы пошли))) как раз тема для нового плейлиста)))
да, потихоньку)
Большое спасибо Вам. Сразу во всем разобрался. Отличная подача материала. Лайк и подписка.
Нашел твой канал через запрос и очень рад твоим видеоурокам, большое спасибо за твой труд, очень помогает в обучении!
Спасибо, очень понятное объяснение!
Интересная тема! Благодарю!
_Остаёмся на канале!_
Привет, Артём. Как всегда, твой способ подачи материала на высоте. Очень бы хотелось увидеть в плейлисте тему АЛГОРИТМЫ.
спасибо)
Тоже очень-очень жду больше видео про алгоритмы и структуры данных🤝
Тема понятнее разобрана, чем в кусре скиллбокса за 150к))) спасибо)
Все понятно, спасибо большое. Очень хорошее объяснение
Отличный канал, очень рада, что нашла! Просто замечательная и отлично структурированная подача материала! Спасибо большое за такой классный контент!
Обнял. Лучше чем в скилбоксе
Отличный преподаватель. Алгоритмы - в плейлист.
Именно за это видео подпишусь и поставлю лайк!
Благодарю Артем, отличное объяснение.
спасибо вам, дядя с ютуба, очень выручило
Можно еще сделать так чтоб длина масива находилась без ввода пользователя:
array = list(map(int,input("Введите список: ").split())) # запрашиваем весь список
l = len(array) # сохраняем в переменную длину списка
Я считаю ,что это более лучший способ ,например пропадает такая проблема ,если пользователь ввел неправильную длину масива.
Обожаю твои видео!😊😍Самое понятное объяснение из всех👍
Ох! Отличный урок! Все предельно понятно! Спасибо!
Алгоритм избыточен, нужно проверять список, пока есть что менять местами.
Такой вариант [4,3,2,6,7,8,9] будет проверятся в 2 раза дольше чем должен.
ls = [4,3,2,6,7,8,9]
while True:
changed = 0
for i in range(len(ls)-1):
if ls[i] > ls[i+1]:
ls[i], ls[i+1] = ls[i+1], ls[i]
changed = 1
if changed == 0:
break
print(ls)
новички схавают, курс отвратительный
ВЫ ЛУДШИЙ БРАТ
Игорек, Игорек! Подари нам пузырек!
Ты же нам товарищ! Пузырек подаришь?
Спасибо. Сдал на 4 алгоритмы.
супер объяснение !!!!!
спасибо! действительно все четко и ясно!
получается, что если в списке нужно отсортировать к примеру только два первых элемента , а в списке сто или тысяча значений, то первый цикл for после первого прохода, когда сортировка фактически закончена мы будем крутить еще n-1 раз впустую
Мой учитель объяснил это как высшую математику.
Огромное спасибо 🙏😌
Артем, спасибо за это видео. Подскажите новичку, какие алг. задачи на вашем канале решаются методом "поиск в глубину"
Спасибо за видео! Можно еще попросить разобрать сортировку вставками?
Ребята, спасибо вам всем за помощь. Я дожму этот вопрос. Подписывайтесь и спонсируйте этот канал - оно стоит того.
Жирнющий лайк тебе!!!!
ааа, я думал что это овер хард, спасибо что разъяснил )
Мне кажется нужно было назвать - Сортировка пузырем. Ведь вокруг числа образуется мощный толстый защитный пузырь, типо не трож меня, не сравнивай. Или по другому как-то смысл названия объясняется?
n поменять на len(mas) и будет вообще супер)
Это обьяснение метода sort()???
А если неизвестно сколько эл-в в массиве тогда как это решается. Через метод length, я так понимаю
А как сделать сортировку этим же способом , но только двумерного массива?
Допустим отсортировать столбцы двумерного массива по убыванию
а почему бы не сделать вот так
x - это либо min() либ max()
def f(x, list):
lst = []
for i in range(len(list)):
list_l = x()
lst.append(list_l)
list.remove(list_l)
list = lst
return list
Я ошибаюсь или разница с сортировкой выбором только в том, что в сортировке выбором замена происходит 1 раз за проход.
У обоих алгоритмов сложность O(n**2), но в тестах разница в разы. Как я понимаю перестановка элементов в массиве дорогое удовольствие.
вместо run в 4ой строке можно было любое слово?
кайф!
Очень классно и доходчиво объяснено, но одного я не понимаю, для чего нужно использовать алгоритмы сортировки, если есть таковые встроенные, а именно функция sorted() и метод списка .sort().
мб чо бы сортировать самые длинные строки
Как сделать так чтобы пользователь сам вписывал числа которые ему нужно?
если 8 изначально поместить на место 4в изначальном списке то ее всплытие будет нагляднее.
Крутой урок. Хотел спросить, а что если второй цикл заменить на while, получится while mas == mas.sort() получится так же но по моему работать будет быстрее, что думаете по этому поводу?
Кстати, а где в основном это применяется? Потому что например в python есть sort и sorted.
100 балов из 100)))
It's wonderful👍
вместо того, чтобы указывать каждый раз на кол-во переменных в массиве, было бы проще сделать n = len(mas)
+
рақмет өте жақсы түсіндірілген
Артем, а будет видео по сортировке вставками(insertion sort)?
Да можно сделать
спасибо, понятно
А почему сказали что это сортировка не по возрастанию, по моему по возрастанию как раз таки, или я ошибаюсь?
Артем, почему при замене "for run in range(n-1)" на "while s != sorted(s):" выдает ошибку с первого теста?
Результат же сходится. Изначально появилась идея сделать через While
from random import randint
N = 10
a = []
for i in range(N):
a.append(randint(1, 99))
print(a)
i = 0
while i < N - 1:
j = 0
while j < N - 1 - i:
if a[j] > a[j+1]:
a[j], a[j+1] = a[j+1], a[j]
j += 1
i += 1
print(a)
Знаю поздно. Но пофиг
Привет, можешь сказать что за программа, благодаря которой ты рисуешь на экране?
paint с таким же успехом можно использовать
почему сначала было 10 операций, а потом стало 9
Спасибо
Хорошо обьяснил но реализовать коды чуть сложнее.
лучший
Помог , объяснил
хорош
подписка
можно ли выучить python за 2месяца?
основы ты выучишь. А вот дальше нужно определиться что тебе нравиться. Например создавать сайты. Изучаешь Django или Flask. И делаешь
@@простоМалышОва создавать игры или типо того
@@eed875 ну тогда Pygame но наверно пайтон не надо учить, лучше С#. Он более лучше подходить для создания игр
@@простоМалышОва ооо спасибо я какраз выбирал между ними, у с# просто есть unity
не бросай питон!!!!!!!!!!!!!!!
Ент Айдос🤝
инфомат де
@@hoco2963 иәиәиә
@@hunhunhun5063 👤🚬
pep8 :-(
Только что оплатил на RUclips со своего телефона подписку Мидл за 150р. Деньги списались. Доступа НЕТ. Это что ? Ни с телефона, ни с компьютера. Нужно чтобы время прошло ? Или как ?
доступ предоставляет youtube и оплатой они занимаются, нужно им в техподдержку писать. вы территориально где кстати находитесь? только не говорите, что в крыму
@@egoroffchannel В Ростове на Дону. Деньги списались с телефона. Четко так, "без сучка и задоринки "... А вот доступа нет.
@@egoroffchannel Подскажите, как с ними связаться, пожалуйста.
@VSСпасибо конечно, НО КАК ?
support.google.com/youtube/answer/3545535?co=GENIE.Platform%3DDesktop&hl=ru
no mas...
зачем принимать "n" от пользователя, если n = len(mass)?!)))
в целом для питона эта информация не нужна, но для других языков необходима
я думаю если выпить водочки (пузырёк) то вообще всё по маслу пойдёт =) спасибо за подробный разбор
у меня не получилось,все написал как есть
возникает вопрос, а не проще используя функцию мин() наполнить второй список.
по сути кол-во проходов (замен)будет меньше , а именно будет равно кол-ву элементов в списке
Это другой способ сортировки
@@egoroffchannel сори, не обратил внимание что задача использовать именно этот алгоритм )
Первый просмотр и первый лайк!
почему код не по PEP8 ну прям глаза режет
Мне кажется можно в этот же плейлист с алгоритмами можно докинуть Ваше видео с сортировкой подсчётом. ruclips.net/video/ukTBUyTOZs4/видео.html
хорошая идея)
отдуши
Здравствуйте Артём, у меня ДЗ пожалуйста не поможете?
docs.google.com/document/d/10Uz9_4uG5No5eWUObR6krZCdZqN3vAqc_oEgkI6Eqbc/edit?usp=sharing
я не понимал, почему у меня ошибка, но потома понял, что надо сперва указать количество символов в массиве. Думаю, это можно оптимизировать спомощью len. или я не прав?
Я 2-й!!
++++
mas gavnomass инжайн иржан епта ты шо там Иржан как дела?
Лучшее, что я слышал и видел за свою практику. метод m.soart() - курит в сторонке. Просто Браво.
Спасибо