zoukankan      html  css  js  c++  java
  • 【LeetCode】Plus One

    Given a number represented as an array of digits, plus one to the number.

    hint : 类似于字符串模拟加减法的思路:

    class Solution {
    public:
        vector<int> plusOne(vector<int> &digits) {
            // Note: The Solution object is instantiated only once and is reused by each test case.
            vector<int> res;
            if(digits.size() == 0)
                return res;
            int carry = 1;
            int sum ;
            for(int i = digits.size() - 1; i >=0; i--)
            {
                sum = carry + digits[i];
                carry = sum / 10;
                sum %= 10;
                res.push_back(sum);
            }
            if(carry == 1)
                res.push_back(1);
            reverse(res.begin(),res.end());
            return res;
        }
    };


    java什么的:

    public class Solution {
        public int[] plusOne(int[] digits) {
            // Note: The Solution object is instantiated only once and is reused by each test case.
            int len = digits.length;
            for(int i = len-1; i >= 0; i--)
            {
                if(digits[i] != 9)
                {
                    digits[i]++;
                    return digits;
                }
                else digits[i] = 0;
            }
            
            int[] res = new int[len+1];
            res[0] = 1;
            return res;
                
        }
    }


  • 相关阅读:
    Django-url反向解析和命名空间
    django-分页paginator
    python-命令模式
    python-访问者模式
    python-责任链模式
    python-备忘录模式
    最长无重复字串
    计算机网络常见面试题
    C++对象模型
    原码反码补码(转)
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3369537.html
Copyright © 2011-2022 走看看