?? precision.java
字號:
/*
* Copyright (C) 2000-2007 Wang Pengcheng <wpc0000@gmail.com>
* Licensed to the Wang Pengcheng under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The LGPL licenses this file to You under the GNU Lesser General Public
* Licence, Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
*
* http://www.gnu.org/licenses/lgpl.txt
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Precision.java
*/
package cn.edu.whu.iss.algorithm.unit02;
import mypackage.tools.print.P;
/**
* Precision plug method.
* I will add more precision methods to make it more useful.
* @author wpc
* @version 0.0.1
*/
public class Precision{
public static int[] binaryAdd(int element1[],int element2[]){
int n = Math.max(element1.length,element2.length);
int[] result = new int[n+1];
for(int i=0;i<n+1;i++){
result[i] = 0;
}
for(int i=0;i<n;i++){
result[i] = element1[i]+element2[i]+result[i];
if(result[i]>1){
result[i+1] = result[i]/2+result[i+1];
result[i] = result[i]%2;
}
}
return result;
}
public static void main(String[] args){
int[] a = {1,0,1,0,1,0,1,0,0,1};
int[] b = {0,1,1,0,1,1,1,0,1,1};
int[] c = Precision.binaryAdd(a,b);
for(int i=c.length-1;i>=0;i--){
P.rint(c[i]);
}
P.rintln(" ");
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -