stiansjogren icon

mergesorts

stiansjogren | PRO | 11/30/15 09:26:55 PM UTC | 0 ⭐ | 856 👁️ | Never ⏰ | []
Python |

340 B

|

None

|

0 👍

/

0 👎

def mergesort(seq):
    mid=len(seq)//2
    lft, rgt = seq[:mid], seq[mid:]
    if len(lft) > 1: lft = mergesort(lft)
    if len(rgt) > 1: rgt = mergesort(rgt)
    res=[]
    while lft and rgt:
        if lft[-1] >= rgt[-1]:
            res.append(lft.pop())
        else:
            res.append(rgt.pop())
    res.reverse()
    return (lft or rgt) + res
 
a=[1,4,2,3,4,21,2,3,1]
 
print mergesort(a)

Comments