Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Criacao dos metodos de ordenacao
- def bubble_sort(lista):
- ordenado = False
- while not ordenado:
- ordenado = True
- # laço
- for i in range(0, len(lista)-1):
- if lista[i] > lista[i+1]:
- # faz a troca (swap)
- lista[i], lista[i+1] = lista[i+1], lista[i]
- ordenado = False
- return lista
- def insertion_sort(lista): # tipo jogo de cartas
- for i in range(1, len(lista)):
- for j in range(0, i):
- if lista[i] < lista[j]:
- lista[i], lista[j] = lista[j], lista[i] # troca
- return lista
- def menor(lista, inicio=0): # retorna o indice com o menor valor
- menor = inicio # armazena indice do menor
- for i in range(inicio, len(lista)):
- if lista[i] < lista[menor]:
- menor = i
- return menor
- def selection_sort(lista):
- for i in range(0, len(lista)):
- indice_menor = menor(lista, i)
- #indice_menor = lista.index(min(lista[i:]))
- lista[indice_menor], lista[i] = lista[i], lista[indice_menor] # troca
- return lista
- ## TESTES ##
- lista = [5,8,2,1,7]
- print(lista)
- print(bubble_sort(lista))
- print()
- lista = [5,8,2,1,7]
- print(lista)
- print(insertion_sort(lista))
- print()
- lista = [5,8,2,1,7]
- print(lista)
- print(selection_sort(lista))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement