Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. #СОРТИРОВКА ВЫБОРОМ
  2.  
  3. s = [2,4,8,1,0,3,9,5,7,6]
  4. print (s)
  5.  
  6. #в переменной k хранится индекс элемента, подлежащего обмену (двигаемся слева на право)
  7. k = 0
  8. while k < len(s) - 1: #-1, т.к. последний элемент обменивать уже не надо
  9. m = k #в m хранится минимальное значение
  10. i = k + 1 #откуда начинать поиск минимума (элемент следующий за k)
  11. while i < len(s):
  12. if s[i] < s[m]:
  13. m = i
  14. i += 1
  15. t = s[k]
  16. s[k] = s[m]
  17. s[m] = t
  18. k += 1 #переходим к следующему значению для обмена
  19.  
  20. print(s)
  21.  
  22.  
  23. #СОРТИРОВКА ПУЗЫРЬКОМ
  24. #создаем список
  25. li = [0, 5, 8, 4, 9, 3]
  26. #вычисляем длину списка
  27. n = len(li)
  28. #внешний цикл отсчитывает количество "проходов" по списку
  29. for j in range(0,n-1):
  30. #вложенный цикл сравнивает i-ый c i+1 -ым элементом и при необходимости меняет их местами
  31. #количество сравнений каждый раз уменьшается на величину j
  32. for i in range(0,n-j-1):
  33. if li[i] < li[i+1]:
  34. li[i],li[i + 1] = li[i + 1], li[i]
  35. print(j+1, "- ый проход цикла - ",end=" ")
  36. print(li)
  37. print(li)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement