Guest User

Untitled

a guest
Nov 23rd, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.60 KB | None | 0 0
  1. import doctest
  2.  
  3. def quickSort(lista):
  4.     """
  5.    >>> quickSort([2, 3, 1, 4, 5, 7, 8])
  6.    [1, 2, 3, 4, 5, 7, 8]
  7.    >>> quickSort([9,7,4,8,2,1,6,3,54,2,6,1,21,76,3,7])
  8.    [1, 1, 2, 2, 3, 3, 4, 6, 6, 7, 7, 8, 9, 21, 54, 76]
  9.    """
  10.     if len(lista) <= 1:
  11.         return lista
  12.  
  13.     pivo = lista[-1] # Ultimo elemento da lista
  14.     p, q = [], []
  15.  
  16.     # Itera sobre a lista, exceto o ultimo elemento (pivo)
  17.     for elem in lista[:-1]:
  18.         if elem < pivo:
  19.             p.append(elem)
  20.         else:
  21.             q.append(elem)
  22.  
  23.     return quickSort(p) + [pivo] + quickSort(q)
  24.  
  25. doctest.testmod()
Add Comment
Please, Sign In to add comment