O ato de trocar duas variáveis ??na programação de computadores refere -se aos valores das variáveis. Isso geralmente é feito usando dados armazenados na memória. Por exemplo, duas variáveis ??em um programa são declaradas da seguinte forma:
data_item x: = 1
data_item y: = 0
troca
Após a troca, X terá o valor 0 e Y terá o valor 1; Seus valores foram trocados. Outros tipos de valores, como strings e tipos de dados agregados, podem ser usados ??com esta operação. Os swaps são usados ??para alterar os posicionamentos dos dados em tipos de comparação.
A troca é um embutido em várias línguas de computador. As sobrecargas estão disponíveis no C ++, permitindo que a STD :: trocasse algumas estruturas enormes em O.
Embora essa seja uma noção básica e, em muitas circunstâncias, a única técnica prática para trocar duas variáveis, ela consome mais. Embora isso não deva ser um problema na maioria dos aplicativos, os tamanhos dos valores que estão sendo trocados podem ser grandes, ou a operação de troca pode precisar ser repetida várias vezes, como na classificação dos algoritmos.
Além disso, em idiomas orientados a objetos-C ++, a troca de duas variáveis ??pode precisar de uma para o construtor e destruidor de classe para a variável temporária, bem como três chamadas para o construtor de cópias. Algumas classes adquirem memória no construtor e, em seguida, desaloculam -a no destruidor, resultando em chamadas de sistema dispendioso. Os construtores de copiar para classes com muitos dados, como uma matriz, podem exigir para copiar manualmente os dados.
A operação XOR é usada para trocar duas variáveis ??numéricas na troca XOR. Geralmente é visto como mais rápido que a técnica de Naãs acima mencionada, embora tenha desvantagens. Em geral, o XOR Swap é usado para trocar tipos de dados de baixo nível, como números inteiros. No entanto, é teoricamente capaz de trocar dois valores representados por frutas de bits de comprimento fixo.
Os contêineres que usam ponteiros para alocar memória da pilha podem ser trocados em uma única operação trocando apenas os ponteiros. Isso é mais comum em linguagens de programação que permitem ponteiros, como C ou C ++. A biblioteca de modelos padrão usa sua função de troca interna para trocar com eficiência o conteúdo dos contêineres.
Como as variáveis ??do ponteiro geralmente são de tamanho fixo e são numéricas, a troca XOR pode ser usada para trocá -las rapidamente.
Baixe a galeria transparente de imagens PNG Swap PNG.
Resolução: 480 × 480
Tamanho: 31 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 9 KB
Formato da imagem: .png
Download
Resolução: 855 × 642
Tamanho: 13 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 4 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 14 KB
Formato da imagem: .png
Download
Resolução: 639 × 661
Tamanho: 10 KB
Formato da imagem: .png
Download
Resolução: 981 × 818
Tamanho: 10 KB
Formato da imagem: .png
Download
Resolução: 980 × 980
Tamanho: 38 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 7 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 8 KB
Formato da imagem: .png
Download
Resolução: 600 × 451
Tamanho: 56 KB
Formato da imagem: .png
Download
Resolução: 512 × 398
Tamanho: 4 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 6 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 20 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 7 KB
Formato da imagem: .png
Download
Resolução: 512 × 473
Tamanho: 17 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 15 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 5 KB
Formato da imagem: .png
Download
Resolução: 522 × 298
Tamanho: 5 KB
Formato da imagem: .png
Download
Resolução: 640 × 480
Tamanho: 36 KB
Formato da imagem: .png
Download
Resolução: 623 × 734
Tamanho: 21 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 6 KB
Formato da imagem: .png
Download
Resolução: 512 × 512
Tamanho: 4 KB
Formato da imagem: .png
Download
Resolução: 1463 × 1147
Tamanho: 24 KB
Formato da imagem: .png
Download
Resolução: 1997 × 1749
Tamanho: 48 KB
Formato da imagem: .png
Download
Resolução: 572 × 980
Tamanho: 20 KB
Formato da imagem: .png
Download
Resolução: 626 × 626
Tamanho: 217 KB
Formato da imagem: .png
Download
Resolução: 980 × 474
Tamanho: 11 KB
Formato da imagem: .png
Download
Resolução: 600 × 600
Tamanho: 86 KB
Formato da imagem: .png
Download
Resolução: 1001 × 1002
Tamanho: 24 KB
Formato da imagem: .png
Download
Resolução: 980 × 980
Tamanho: 21 KB
Formato da imagem: .png
Download