zoukankan      html  css  js  c++  java
  • leetcode- Plus One

    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.

    题意:就是把数字 -> 数组 ,然后个位数 +1 ,主要考虑极端情况 ,9999999,+1,数组扩展一位;

    代码:

    package leetcode;

    public class PlusOne {
        public int[] plusOne(int[] digits) {
            int len = digits.length;
            int carry = 1;
            for(int i = len-1 ; i>=0;i--){
                int sum = digits[i] + carry;
                if(sum <=9 ) return digits;    //只是在最低位+1;  如果有一位不超过9,那么就直接返回,后面的代码都不用执行
                                               //这里只要考虑极端情况就OK~
            digits[i] = 0;    
            }
          int[] newdigits = new int[len+1];
          newdigits[0] = 1;
          return newdigits;                //这个返回的意思是,999999+1 = 1000000,因此,只要在最高位加1位即可,后面的都是0!!
            
        }

        public static void main(String[] args) {
            // TODO Auto-generated method stub

        }

    }

    态度决定行为,行为决定习惯,习惯决定性格,性格决定命运
  • 相关阅读:
    基于Metaweblog API 接口一键发布到国内外主流博客平台
    uva144 Student Grants
    Uva 10452
    Uva 439 Knight Moves
    Uva 352 The Seasonal War
    switch语句
    java——基础知识
    我的lua学习2
    codeforces 431 D. Random Task 组合数学
    codeforces 285 D. Permutation Sum 状压 dfs打表
  • 原文地址:https://www.cnblogs.com/neversayno/p/5395147.html
Copyright © 2011-2022 走看看