Given a non-negative number represented as an array of digits, plus one to the number.
The digits are stored such that the most significant digit is at the head of the list.
// https://oj.leetcode.com/problems/plus-one/ // Author : Chao Zeng // Date : 2015-1-29 class Solution { public: vector<int> plusOne(vector<int> &digits) { vector <int> numbers; reverse(digits.begin(),digits.end()); int length = digits.size(); digits[0]++; int temp; for (int i = 0; i < length; i++){ //注意语句的顺序 temp = digits[i] / 10; digits[i] = digits[i] % 10; numbers.push_back(digits[i]); //进位的处理 if (i == length - 1 && temp > 0){ numbers.push_back(temp); } else{ digits[i+1] = digits[i+1] + temp; } } reverse(numbers.begin(),numbers.end()); return numbers; } };
原文地址:http://blog.csdn.net/hnuzengchao/article/details/43283207