其他分享
首页 > 其他分享> > 2021-4-24

2021-4-24

作者:互联网

2021-4-24

一、英语

1、slightingly:轻视地、忽视地
2、coincide in:(想法、利益)一致、相符

二、算法题目

巧解数学问题

1、168:进制转化

class Solution {
public:
//十进制转化为二十六进制,但是这里的26范围使1到26,不是0到25
//所以处理26的时候要注意
    string convertToTitle(int columnNumber) {
        string res = "";
        while(columnNumber>0)
        {
            int n = columnNumber%26;
            if(n==0)
            {
                res = 'Z'+res;
                columnNumber = columnNumber/26-1;
            }
            else
            {
                res = char(n-1+'A')+res;
                columnNumber = columnNumber/26;
            }
        }
        return res;
    }
};

2、67:二进制运算

class Solution {
public:
//首先将两个字符不起,然后相加,相加之后再判断是否进位
//注意的是加到首位的时候要判断是否需要再进位
    string addBinary(string a, string b) {
        int m = a.size();
        int n = b.size();
        while(m<n)
        {
            a = '0'+a;
            m++;
        }
        while(n<m)
        {
            b = '0' +b;
            n++;
        }
        //这里0不能进行相加,因为涉及进位,a[0-1]会导致下标出界
        for(int i = n-1;i>0;--i)
        {
            a[i] = a[i]-'0'+b[i];
            if(a[i]>='2')
            {
                a[i] = (a[i]-'0')%2+'0';
                a[i-1] = a[i-1]+1;
            }
        }
        a[0] = a[0]-'0'+b[0];
        if(a[0]>='2')
        {
            a[0] = (a[0]-'0')%2+'0';
            a = '1'+a;
        }
        return a;
    }
};

fighting!
在这里插入图片描述

标签:24,columnNumber,26,string,int,res,while,2021
来源: https://blog.csdn.net/qq_43326818/article/details/116072720