Informática, perguntado por rafael17foz, 11 meses atrás

A ordenação Insertionsort também é conhecida como ordenação por inserção. É de implementação simples e traz bons resultados. Considere o trecho de código abaixo.

01 - int insertionionSort(int vec[], int tam) {
02 - int i, j, qtd=0;
03 - for(i = 1; i < tam; i++){
04 - j = i;
05 - while((vec[j] < vec[j - 1]) && (j!=0)){
06 - troca(&vec[j], &vec[j-1]);
07 - j--;
08 - qtd++;
09 - }
10 - }
11 - return(qtd);
12 - }

Com base no exposto, analise as afirmações a seguir:

I - A verificação "(vec[j] < vec[j - 1])" da linha 5 funciona de maneira similar à busca sequencial indexada.
II - O laço interno, que vai das linhas 5 a 9 é sempre executado até que a variável j atinja o valor 0.
III - Pode-se dizer que do índice 0 até i-1 temos a porção ordenada do vetor vec.

Dessa forma é correto o que se afirma em:
Alternativas
Alternativa 1:
I ,apenas.

Alternativa 2:
III, apenas.

Alternativa 3:
I e II, apenas.

Alternativa 4:
I e III, apenas.

Alternativa 5:
II e III, apenas.

Soluções para a tarefa

Respondido por maiconavhonp7apgm
1

Resposta:

acho q é I e II

Explicação:

a 3 esta errada pq o código n esta diminuindo o valor de i e sim de j


rafael17foz: Acredito que epenas a I esteja correta. A II acredito que seja errada, pois existem duas condições do laço de repetição e não uma, neste caso não é apenas quando J atingir valor 0.
Respondido por LarissaMoura3
10

Alternativa 1: I ,apenas.

Ao analisar as afirmativas, podemos concluir que:

I – Correta. O funcionamento da verificação "(vec[j] < vec[j - 1])" da linha 5 é semelhante ao que ocorre na busca sequencial indexada.

II – Incorreta. O laço interno que compreende as linhas 5 até a 9 pode ser executada até que a variável j alcance o valor 0 ou por outra condição de laço de repetição.

III – Incorreta. É possível perceber que do índice 0 até j-1 ocorre a porção ordenada do vetor do tipo vec.

Bons estudos!

Perguntas interessantes