bubsortdoctest.py 525 B

1234567891011121314151617181920212223242526272829
  1. def bubsort(l):
  2. """ Tri pas la méthode des bulles
  3. Exemples:
  4. >>> bubsort([4,3,5])
  5. [3, 4, 5]
  6. >>> bubsort(["abc","aa","cdef", "a"])
  7. ['a', 'aa', 'abc', 'cdef']
  8. """
  9. def fmin(ll):
  10. minv = ll[0]
  11. ind =0
  12. lr=len(ll)
  13. for x in range(1,lr):
  14. if ll[x]<minv:
  15. ind =x
  16. minv=ll[x]
  17. return ind
  18. #
  19. lc= l.copy()
  20. res= []
  21. while len(lc)>0:
  22. ind=fmin(lc)
  23. res.append(lc.pop(ind))
  24. return res