一些小算法!

来源:互联网 发布:智能手机硬件修复软件 编辑:程序博客网 时间:2024/05/21 12:49

public class test{
 
 public void jiaohuan(int numa 16,int numb 3){
  //方案1基本运算法
  numa = numa+numb;
  numb = numa-numb;
  numa =numa-numb;
  System.out.println("numa="+numa+"numb="+numb);
  //方案2位移运算法
  numa = numa>>numb;
  numb = numa>>numb;
  numa = numa>>numb;
  System.out.println("numa="+numa+"numb="+numb);
 }

 //递归实现 查询第n个数的值,规律如下:1,1,2,3,5,8。。。。
 public int digui(int num){
  if(num > 0)
   if(num<3)//或者if(num == 1)或者if(num <= 2)都可以
    return 1;
   eles
    return digui(num-1)+digui(num-2);
  return 0;
 }
 //用最快,最有效的方式算出2*8;
 public void weiyi(){
  System.out.println(2<<3);
  //2的2进制 为10 左移一位是 100
  //再1左移一位1000
  //再1左移一位10000   十进制的16
  //同样 由16  右移  3位也就是 16/8的最快,最有效的算法即16>>3
  //右移一位是1000
  //再右移一位是100
  //再右移一位是10也就是   十进制的2  
  //位移运算符 是最有效,最快,最节约资源的算法@
 }
 
 

}