Saturday, December 2, 2017

추가 변수 선언 없이 이루어지는 두 변수 값 교환 방법: 효율적인 Variable Swap

임시 변수 없이 두 변수의 값을 스왑하는 방법

두 변수의 값을 서로 교환하려면 보통 임시 변수를 사용합니다. 하지만, 비트 연산을 이용하면 임시 변수 없이도 두 변수의 값을 교환할 수 있습니다. 이 방식은 JAVA에서 작동하지만, 대부분의 프로그래밍 언어에서 비트 연산을 지원하기 때문에 다양한 언어에 적용할 수 있습니다.


int a = 1; // 0000 0001
int b = 2; // 0000 0010 
a = a ^ b; // 0000 0001 ^ 0000 0010 = 0000 0011
b = b ^ a; // 결과 : a=2, b=1;

위와 같은 방법은 필요없는 변수 선언을 줄여 성능 향상을 기대할 수 있지만, 가독성 면에서는 임시변수를 사용하는 것이 더 좋을 수도 있습니다.


0 개의 댓글:

Post a Comment