Solutions:
1) Using temporary variable / Using extra space
2) Without using temporary variable / Without using extra space
a) Using arithmetic operators
b) Using bitwise operator
Solution 1: Using temporary variable
We can use "*" & "/" operators also instead of "+" & "-". Check the above program lines 14, 15 and 16 for the reference. But problem with "/" operator is it gives java.lang.ArithmeticException: / by zero Exception for "b" value is zero.
Solution 2 b: Using bitwise operator
1) Using temporary variable / Using extra space
2) Without using temporary variable / Without using extra space
a) Using arithmetic operators
b) Using bitwise operator
Solution 1: Using temporary variable
//SwapUsingExtraVariable.java public class SwapUsingExtraVariable { public static void main(String[] args) { int a = 10; int b = 20; System.out.println("Values before swapping"); System.out.println("a= " +a + " b= "+b); int temp = a; a = b; b = temp; System.out.println("Values after swapping"); System.out.println("a= " +a + " b= "+b); } } // Output: //Values before swapping //a= 10 b= 20 //Values after swapping //a= 20 b= 10Solution 2 a: Using arithmetic operators
//SwapUsingArthematic.java public class SwapUsingArthematic { public static void main(String[] args) { int a = 10; int b = 20; System.out.println("Values before swapping"); System.out.println("a= " +a + " b= "+b); a = a + b; b = a - b; a = a - b; // a = a * b; // b = a / b; // a = a / b; System.out.println("Values after swapping"); System.out.println("a= " +a + " b= "+b); } } // Output: //Values before swapping //a= 10 b= 20 //Values after swapping //a= 20 b= 10
We can use "*" & "/" operators also instead of "+" & "-". Check the above program lines 14, 15 and 16 for the reference. But problem with "/" operator is it gives java.lang.ArithmeticException: / by zero Exception for "b" value is zero.
Solution 2 b: Using bitwise operator
//SwapUsingBitWiseOperator.java public class SwapUsingBitWiseOperator { public static void main(String[] args) { int a = 10; int b = 20; System.out.println("Values before swapping"); System.out.println("a= " +a + " b= "+b); a = a ^ b; b = a ^ b; a = a ^ b; System.out.println("Values after swapping"); System.out.println("a= " +a + " b= "+b); } } // Output: //Values before swapping //a= 10 b= 20 //Values after swapping //a= 20 b= 10
No comments:
Post a Comment