Получение наименее распространенного элемента в массиве

Взгляните на директивы препроцессору ...

#if DEBUG
    //code
#endif

25
задан Jim Fasarakis Hilliard 16 November 2017 в 17:53
поделиться

3 ответа

def least_common_values(array, to_find):
    """
    >>> least_common_values([1,1,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,4,4], 2)
    [(1, 2), (2, 4)]
    """
    counts = collections.Counter(array)
    return list(reversed(counts.most_common()[-to_find:]))
4
ответ дан 28 November 2019 в 18:02
поделиться

Самый простой способ реализовать поиск минимума в Iterable заключается в следующем:

Counter(your_iterable).most_common()[-1]

, который возвращает двумерный кортеж, содержащий элемент в первой позиции и количество вхождений в вторая позиция.

3
ответ дан 28 November 2019 в 18:02
поделиться

Вы можете использовать функцию клавиш:

>>> data=[1,1,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,4,4]
>>> min(data,key=lambda x: data.count(x))
1
>>> max(data,key=lambda x: data.count(x))
4
0
ответ дан 28 November 2019 в 18:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: