LintCode 407. 加一

来源:互联网 发布:linux下c语言编程 编辑:程序博客网 时间:2024/05/16 01:27

思路:

逐数字相加,采用进位标志标记是否需要进位

代码:

class Solution {public:    /**     * @param digits a number represented as an array of digits     * @return the result     */    vector<int> plusOne(vector<int>& digits) {        // Write your code here        int len = digits.size(), tmp = 0, plus = 1;        for(int i = len - 1;i >= 0; --i){            tmp = digits[i] + plus;            digits[i] = tmp % 10;            plus = tmp / 10;        }// for        if(0 == plus)            return digits;        digits.push_back(0);        for(int i = len; i > 0; --i)            digits[i] = digits[i - 1];        digits[0] = 1;        return digits;    }};


0 0
原创粉丝点击