zoukankan      html  css  js  c++  java
  • 66. 加一

    66. 加一

    https://leetcode-cn.com/problems/plus-one/description/

    package com.test;
    
    import java.util.Arrays;
    
    /**
     * @Author stono
     * @Date 2018/8/23 上午8:13
     */
    public class Lesson066 {
        public static void main(String[] args) {
            int[] digits = {1};
            int[] ints = plusOne(digits);
            System.out.println(Arrays.toString(ints));
        }
    
        public static int[] plusOne(int[] digits) {
            int length = digits.length;
            // 如果最后一位小于9,不需要进位
            if (digits[length - 1] < 9) {
                digits[length - 1] = digits[length - 1] + 1;
                return digits;
            }
            int last = digits[length - 1];
            // 判断不等于9的是哪一位
            while (last - 9 == 0 ) {
                length--;
                if (length < 0) {
                    break;
                }
                last = digits[length];
            }
            // 找到中间某一位比9小
            if (length > -1) {
                // 把该位加1
                digits[length] = digits[length] + 1;
                // 该位之后的数字都加1
                for (int i = length + 1; i < digits.length; i++) {
                    digits[i] = 0;
                }
                return digits;
            }
            // 如果全部都等于9,就进位处理
            int[] res = new int[digits.length + 1];
            res[0] = 1;
            for (int i = 1; i < res.length; i++) {
                res[i] = 0;
            }
            return res;
        }
    }
  • 相关阅读:
    org.dom4j.Document相关操作api
    生成excel
    Maven
    Excel操作
    常用正则
    csv
    导出txt
    Map中的key值按字典排序,客户端发送http请求
    HmacSHA256签名加Base64编码加URL编码
    5.1SpringAOP-基础(装饰者,静态代理,JDKD动态代理,CGLIB动态代理)
  • 原文地址:https://www.cnblogs.com/stono/p/9521629.html
Copyright © 2011-2022 走看看