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