ВК
Вероника Катаева

Было тут когда-то задание на поиск наиболее повторяющегося элемента списка. Свой алгоритм придумал, но... (+)

...знаю что есть тут мастера всё решать в одну строчку. Но и как тогда это можно решить покороче?

МК
Мария Козлова

a = [30, 20, 100, 32, 57, 10, 32, 57, 10, 35, 100, 31, 32]
l = {a.count(i): i for i in set(a)}
print(l[max(l)])

НИ
Новикова Ирина

Алгоритмически это решается так (в один проход):
пусть элемент = неЧисло, повторы = хэштаблица‎()‎;
пока (число из числа) {
пусть максПовторов = повторы‎[элемент] или 0;
пусть повторыЧисла = повторы‎[число] = (повторы‎[число] или 0) + 1;
если (неЧисло‎(элемент) или (повторыЧисла > максПовторов))
элемент = число;
}
вывод‎(элемент, повторы‎[элемент]);
А как на червяке, да покороче - справочник по синтаксису поможет.
Реализация на скриншоте явно неоптимальна из-за вложенного цикла, то есть выполняться будет тем дольше, чем больше чисел. У хэштаблиц же, время доступа по ключу всегда ➝O(1).

// Удвоил объем псевдокода, чтобы показать: не всегда краткость оправдана. Код пишется в первую очередь для программера, поэтому он должен быть читаем (большой объем с читаемостью "по диагонали" всегда лучше маленького комочка спагетти-кода: на прочтении, это секунды против минут). Сокращать следует магией языка, такой как унарные операторы и хелпер-функции работы со структурами... а не экономией символов.

Похожие вопросы
среди представленных элементов наиболее выражены неметаллические свойства у: C, Sn. Si. Ge? задание по химии
Помогите пожалйста! По физике дали такое задание придумать свой шкалу как например Цельсия, Фарингейта. Подайте идею
помогите! Нужно придумать свой закон и проект закона. помогите, может кто уже делал такие задания? Заранее спасибо..
Excel. Есть несколько списков. Некоторые элементы повторяются в списках. Вопрос: как узнать в каких списках элемент?
Быстрый поиск наиболее часто встречаемого элемента в большом массиве.
Не работает программа нахождения наиболее повторяющегося элемента
Помогите с вижуал бесиком Помогите сделать задание повижуал бейсику. Закину на вебмани или еще куда, за помощь: )2. Создайте приложение, которое позволяет выполнять следую-щие действия: – вводить с помощью функцииInputBox() элементы одномерно-го массиваA(2, –4, 3, 7, –8, 6, –5, 5, 4, –1); – отображать элементы массива в окне списка; – выводить индекс выделенного элемента массива в текстовомполе; – находить сумму четных и нечетных элементов массива; – находить сумму и произведение положительных и отрицательных элементов массива.