程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 67. Add Binary,67addbinary

67. Add Binary,67addbinary

編輯:JAVA綜合教程

67. Add Binary,67addbinary


 

 

 1 public class Solution {
 2     public String addBinary(String a, String b) {
 3         char[] aa=a.toCharArray();
 4         char[] bb=b.toCharArray();
 5         
 6         int size=aa.length>=bb.length?aa.length:bb.length;
 7         int[] mm=new int[size];
 8         int c=0;
 9         int i=aa.length-1,j=bb.length-1,k=size-1;
10         for(;i>=0&&j>=0;i--,j--,k--)
11         {
12             mm[k]=(aa[i]-'0'+bb[j]-'0'+c)%2;
13             
14             if(aa[i]-'0'+bb[j]-'0'+c>=2) c=1;
15             else c=0;
16         }
17 
18         while(i>=0)
19         {
20               mm[k]=(aa[i]-'0'+c)%2;
21               if(aa[i]-'0'+c>=2) c=1;
22               else c=0;
23               
24               k--;i--;
25             
26         }
27         while(j>=0)
28         {
29             mm[k]=(bb[j]-'0'+c)%2;
30                
31             if(bb[j]-'0'+c>=2) c=1;
32             else c=0;
33             
34              k--;j--;
35         }
36         
37         String s="";
38         if(c==1)
39          s+=String.valueOf(c);
40          
41         for(int n=0;n<mm.length;n++)
42         s=s+String.valueOf(mm[n]); 
43         
44        
45         return s;
46     }
47 }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved