Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Uncategorized category for Min and Max by TovarischZhukov
def find(data, key, needMax=True):
if type(key) == int:
key=round
retval = data[0]
for elem in data[1:]:
if key(elem) > key(retval) and needMax:
retval = elem
if key(elem) < key(retval) and not needMax:
retval = elem
return retval
def min(*args, **kwargs):
data=[]
key=kwargs.get("key", None)
if len(args)==1:
data=args[0]
else:
data=args
if key:
return find(data, key, False)
else:
return sorted(list(data))[0]
def max(*args, **kwargs):
data=[]
key=kwargs.get("key", None)
if len(args)==1:
data=args[0]
else:
data=args
if key:
return find(data, key)
else:
return sorted(list(data))[-1]
March 24, 2016