zoukankan      html  css  js  c++  java
  • LeetCode_Add Binary

    string addBinary(string a, string b) {
            const char * charA = a.c_str();
            const char * charB = b.c_str();
            const char * charC;
            char  *sum = new char[201];
            int A = a.size();
            int B = b.size();
            int C;
    
            if(A < B){
                C = A;
                A = B;
                B = C;          
                charC = charA;
                charA = charB;
                charB = charC;
            }
            int i,j,k;
            memset(sum, 0, sizeof(char)* 201);
            for(i = 0; i < A;i++)
                sum[i+1] = charA[i] ;
    
            for(j = B-1 ,i= 0;j>=0; j--,i++)
                sum[A-i] += charB[j] - '0';
    
            for(i = A; i>0;i--)
            {        
                switch(sum[i]){ 
                case '0':
                case '1': continue;
                case '2': sum[i] = '0'; sum[i-1]+= 1;break;
                case '3': sum[i] = '1'; sum[i-1]+= 1; break;
                }
            }
            sum[A+1] = 0;
            if(sum[0] == 1) {
                sum[0] = '1' ;
                string result(sum) ;
                delete []sum ;
                return result;
            }
            else{
                string resultB(sum+1);
                delete [] sum ;
                return resultB ;
    
            }
    
    
    }
    --------------------------------------------------------------------天道酬勤!
  • 相关阅读:
    一. js高级(1)-面向对象编程
    tips01- 定位
    h5c3 part6 flex
    h5c3 part5 background and transform
    template and pagination
    h5c3 part4
    h5c3 part3
    h5c3 part2
    h5c3 part1
    学习博客
  • 原文地址:https://www.cnblogs.com/graph/p/3009164.html
Copyright © 2011-2022 走看看