Salve,
Antes de mais nada, vejam as animações de algoritmos de ordenação que estão na página
Animação de algoritmos de ordenação de Nicholas André Pinho de Oliveira
Como sugere a página "Ordenação: algoritmos elementares" de Paulo Feofiloff.
Vejam os exercícios na página Algoritmos elementares de ordenação.
Vejam também os exercícios em The Bubble Sort, The Selection Sort e The Insertion Sort.
Sugerimos que vocês façam os exercícios 1.1, 1.5, 2.1, 2.2, 2.8, 2.9, 2.10, 2.11, 3.1, 3.4, 3.5, 3.6, 6.1 e 6.2 da página Ordenação: algoritmos elementares de Paulo Feofiloff.
Mais alguns exercício envolvendo contagem.
- Quantas atribuições faz o trecho de código abaixo?
s = 0; for i in range(1,n+1,1): s = s+i
Escreva um trecho de código que produza o mesmo efeito com menos atribuições. - Quantas adições e multiplicações faz o seguinte trecho de código:
for i in range(0,m,1): for j in range(0,p,1): # calcula o elemento [i][j] prod[i][j] = 0 for k in range(0,n,1): prod[i][j] = prod[i][j] + a[i][k]*b[j][k];
- Quanto vale s no fim do seguinte trecho de código?
s = 0 i = n while i > 0: for j in range(1,i+1,1): s = s + 1 i = i//2 # hmm, podia ser i = i/2?
Hmm... esse não é trivial.