leetcode 每日一题 66. Plus One

来源:互联网 发布:网络配线图怎么画 编辑:程序博客网 时间:2024/06/04 23:27


一开始没理解题意,是一个数用数组来表示的意思,然后对其进行+1操作


很老的思路,设一个标志位,依次判断,如果<9就自增,如果不的话就设为0


最后如果需要9999->10000的时候,需要insert一个1  在开头处(vector果然比数组好用啊!)


class Solution {public:    vector<int> plusOne(vector<int>& digits) {        int len=digits.size();        int tmp=1;        for(int i=len-1;i>=0;i--){            if(digits[i]<9&&tmp==1){                digits[i]++;                tmp=0;            }             else if(digits[i]+tmp==10){  //某一位等于9并且tmp==1的时候                digits[i]=0;                tmp=1;            }        }        if(tmp==1) digits.insert(digits.begin(), 1);        return digits;    }};





0 0