题意:
解题思路:
思路:从后向前,对应的位置的数字相加,如果结果大于 9,需要进位;
PHP代码实现:
class Solution {
function plusOne($digits) {
for ($i = count($digits) - 1; $i >= 0; $i--) {
if ($digits[$i] < 9) {
$digits[$i] += 1;
return $digits;
} else {
$digits[$i] = 0;
}
}
array_unshift($digits, 1);
return $digits;
}
function plusOne1($digits) {
for ($i = count($digits) - 1; $i >= 0; $i--) {
$digits[$i] += 1;
if ($digits[$i] < 10) {
return $digits;
} else {
$digits[$i] = 0;
}
}
array_unshift($digits, 1);
return $digits;
}
}
GO代码实现:
func plusOne(digits []int) []int {
for i := len(digits) - 1; i >= 0; i-- {
if digits[i] < 9 {
digits[i]++
return digits
} else {
digits[i] = 0
}
}
//return append([]int{1}, digits...)
digits[0] = 1
digits = append(digits, 0)
return digits
}