Plus One

/*
    int *plusOne(int *digits, int len, int *newLen)
    感觉很坑,用c做的时候一直run error而且newLen这个参数有用?
*/
class Solution {
public:
    vector<int> plusOne(vector<int> &digits) {
       int i,len = digits.size();
       for(i = len-1; i >=0 ;i--){
           if(digits[i]!=9){//因为是加1所以只有9才能进位
               digits[i]+=1;
               break;
           }else{
               digits[i] = 0;
           }
       }
       if(i<0){//数组全是9的情况只有这种情况数组长度才会加一
           digits[0] = 1;
           digits.push_back(0);
       }
       return digits;
    }
};

 

posted @ 2015-03-14 13:03  SprayT  阅读(83)  评论(0编辑  收藏  举报