A와 B가 8bit 숫자일때 A와 B의 값을 바꾸는 함수
블로그 방문자 중 이런 키워드로 검색한 분이 있어서 서비스 겸 답변 올림
(아마 예전에 올렸던 북미 취업 가이드의 면접 질문 예제가 검색된 듯)
문제:
A와 B가 8bit 숫자일 때 A와 B의 값을 바꾸는 함수.
단, 새로운 변수를 사용하면 안 됨.
A = A ^ B; // ^는 XOR
B = A ^ B;
A = A ^ B;
팁:
A ^ B = A | B - A & B
(즉, A 또는 B인데, A와 B 둘 다인 경우는 제외)
검증:
벤 다이어그램을 그려보면 됨.
OOP 언어만 배우면 잘못 | 설계까지 함께 배운다 | 진짜 객체지향
코드만 알면 반쪽짜리 개발자. 언어와 설계를 함께 배우려면 POCU 아카데미에서 객체지향을 들으세요!