Write a Python function frequency(l) that takes as input a list of
integers and returns a pair of the form (minfreqlist,maxfreqlist) where
- minfreqlist is a list of numbers with minimum frequency in l, sorted in ascending order
- maxfreqlist is a list of numbers with maximum frequency in l, sorted in ascending
>>> frequency([13,12,11,13,14,13,7,11,13,14,12]) ([7], [13]) >>> frequency([13,12,11,13,14,13,7,11,13,14,12,14,14]) ([7], [13, 14]) >>> frequency([13,12,11,13,14,13,7,11,13,14,12,14,14,7]) ([7, 11, 12], [13, 14])
def frequency(l): m=sorted(l) d={x:m.count(x) for x in m} hfelindex=[] lfelindex=[] hfel=[] lfel=[] k=list(d.keys()) v=list(d.values()) h=max(v) g=min(v) for i in range(0,len(v)): if v[i] == h: hfelindex += [i] for j in hfelindex: hfel += [k[j]] p=sorted(hfel) for a in range(0,len(v)): if v[a] == g: lfelindex += [a] for b in lfelindex: lfel += [k[b]] q=sorted(lfel) return((q,p))
Thanks
Happy programming !
No comments:
Post a Comment