
Задачка для программистов, которую любят задавать на собеседованиях. Даны две переменные, например, a=4 и b=7. Требуется поменять местами значения этих переменных (то есть должно получиться a=7 и b=4), но при этом нельзя использовать третью переменную. Нужен алгоритм, который легко реализовать на любом языке.
Ответ
И ещё - предложите самый быстрый алгоритм.
update
Первые - 67108864 и Roman Zhmakin.Ответ
Есть несколько вариантов.
С помощью простых арифметических действий, например:
a = a + b;
b = a - b;
a = a - b;
С помощью функции xor (исключающее ИЛИ):
a = a XOR b;
b = a XOR b;
a = a XOR b;
С помощью простых арифметических действий, например:
a = a + b;
b = a - b;
a = a - b;
С помощью функции xor (исключающее ИЛИ):
a = a XOR b;
b = a XOR b;
a = a XOR b;
И ещё - предложите самый быстрый алгоритм.














