Note: This article originally appeared on my programming book’s blog.
A Clever Programming Trick…
If you need to swap the values of two variables, this usually requires a third temporary variable (that is, if you’re not using a language like Python that supports the a, b = b, a syntax.) It looks something like this:
temp = a;
a = b;
b = temp;
But if these are integer variables, there’s a nifty trick to save yourself a little bit of memory. You can use arithmetic instead of a temporary variable:
a = a + b;
b = a - b;
a = a - b;
If the integers on your platform are 32-bits, your new swap will save four bytes of memory.
NOBODY CARES ABOUT FOUR BYTES OF MEMORY. (more…)