CTCI 17.1 swap two numbers