zoukankan      html  css  js  c++  java
  • 实现AB值对换的两种方法

    package com.smbea.demo.exchange;
    
    /**
     * AB对换
     * @author hapday
     * @2017年1月22日 @上午12:36:24
     */
    public class ABExchangeDemo {
    	/**
    	 * 时间换空间
    	 * 优点:不需要引入新的变量,减少了内存开销
    	 * 缺点:增加了 CPU 的运算量
    	 */
    	public static void timeExchangeSpace() {
    		int a = 3;
    		int b = 6;
    
    		System.out.println("------------ 交换前 ------------");
    		System.out.println("a = " + a + ", b = " + b);
    
    		a = a + b;
    		b = a - b;
    		a = a - b;
    		
    		System.out.println("------------ 交换后 ------------");
    		System.out.println("a = " + a + ", b = " + b);
    	}
    
    	/**
    	 * 空间换时间
    	 * 优点:未增加 CPU 运算量
    	 * 缺点:引入新的变量,增加了内存开销
    	 */
    	public static void spaceExchangeTime() {
    		int a = 3;
    		int b = 6;
    		
    		System.out.println("------------ 交换前 ------------");
    		System.out.println("a = " + a + ", b = " + b);
    		
    		int c = 0;	// 引入新的变量
    		c = a;
    		a = b;
    		b = c;
    		
    		System.out.println("------------ 交换后 ------------");
    		System.out.println("a = " + a + ", b = " + b);
    	}
    
    	public static void main(String[] args) {
    		System.out.println("=============== 时间换空间 =============");
    		timeExchangeSpace();
    		System.out.println("
    
    =============== 空间换时间 =============");
    		spaceExchangeTime();
    	}
    }
    

      

  • 相关阅读:
    Maven 环境的配置
    zTree的简单例子
    plsql免安装客户端的配置
    HDU 1232 畅通工程
    HDU 5698 瞬间移动
    Codeforces 1015E1 Stars Drawing (Easy Edition)
    Codeforces 784B Santa Claus and Keyboard Check
    Codeforces 500C New Year Book Reading
    NSarray 赋值 拷贝 等问题记录
    UINavigationController 操作记录
  • 原文地址:https://www.cnblogs.com/hapday/p/6339026.html
Copyright © 2011-2022 走看看