Estou tentando reverter a ordem dos componentes do meu array, porém o resultado mostra uma resposta indesejada.
Dúvida básica com Arrays
B
2 Respostas
2 likes
Teta fazer assim:
int en = 3;
for (int c=0;c<v.length;c++){
s[c] = v[en];
en--;
}
3 likes
quando for assim, use a tecnica de programação preferida de 9 em cada 10 programadores, o PPADD
“Passei Por Aqui Driven Development”
como assim?
simples, vc esta usando um for duplo sem necessidade. tente imprimir os valores dos seus indices a cada iteração e veja se isso faz sentido.
inverter um array é simples: vc usa um For + matematica.
por exemplo, se vc tem
int x[]={0,1,2,3};
y[ ultimo + 0] = x [ primeiro +0 ];
y[ ultimo -1 ] = x [ primeiro + 1];
y[ ultimo -2 ] = x [ primeiro + 2];
y[ ultimo -3 /* primeiro */ ] = x [ primeiro + 3 /* ultimo */ ];
o primeiro indice é zero, certo?
o ultimo indice vai ser 3, certo?
se vc substituir vai sair
y[ 3 ] = x [ 0 ];
y[ 2 ] = x [ 1 ];
y[ 1 ] = x [ 2 ];
y[ 0 ] = x [ 3 ];
confere?
se vc fizer um loop em i de 0 a 3, é facil ver que x vai usar i x[i] e y vai fazer uma subtracao y[ 3 - i ] ou y[ ultimo - i] onde ultimo vai ser o ultimo indice do array ou array.length -1
use matematica.
Criado 5 de dezembro de 2016
Ultima resposta 5 de dez. de 2016
Respostas 2
Participantes 3
Alura Sistemas operacionais: entenda seu conceito e suas funções Descubra o que são sistemas operacionais, suas funções e tipos. Aprenda tudo de forma clara e objetiva. Não perca tempo!
Casa do Codigo Guia pratico de TypeScript: Melhore suas aplicacoes... Por Thiago da Silva Adriano — Casa do Codigo
