Найти - Пользователи
Полная версия: Очередные интересные задачи из Duke University. +200 к карме за решение :D
Начало » Центр помощи » Очередные интересные задачи из Duke University. +200 к карме за решение :D
1
oxxxymiron
Питон не мое, а в универе требуют…
alexsis
def sort(data):
    freq = {}
    for i in data:
        try:
            freq[i] += 1
        except KeyError:
            freq[i] = 1
    result = sorted(list(freq.items()), key=lambda x: (x[1], reversed(x[0])), reverse=True)
    return [x[0] for x in result]
data = ["apple", "pear", "cherry", "apple", "pear", "apple", "banana"]
print(sort(data))
GreyZmeem
# -*- coding: utf-8 -*-
from itertools import groupby
 
def sort_by_freq(data):
    data.sort()
    data = sorted(
        [(item, len(list(group))) for item, group in groupby(data)], 
        key=lambda x: x[1], 
        reverse=True
    )
    return [x[0] for x in data]
 
data = ['a', 'b', 'c', 'a', 'b', 'b', 'e']
print sort_by_freq(data)
GreyZmeem
# -*- coding: utf-8 -*-
from collections import Counter
 
def sort_by_freq(data):
    count = Counter(data)
    return sorted(count.keys(), key=lambda x: count[x], reverse=True)
 
data = ['a', 'b', 'c', 'a', 'b', 'b', 'e']
print sort_by_freq(data)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB