文档章节

LeetCode:Plus One - 数字加一

北风其凉
 北风其凉
发布于 2015/09/17 22:13
字数 296
阅读 1317
收藏 0

1、题目名称

Plus One(数字加一)

2、题目地址

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

3、题目内容

英文: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.

中文:给出一个由整型数组表示的非负数字,将这个数字加一。数组中的各元素表示该数字的各位,越靠前的元素权越大。

4、解题方法

本题的解题思路,就是模拟现实中做加法的方式,在个位加一,并考虑进位的情况。Java代码如下:

/**
 * 功能说明:LeetCode 66 - Plus One
 * 开发人员:Tsybius2014
 * 开发时间:2015年9月17日
 */
public class Solution {
    
    /**
     * 数字加1
     * @param digits 数字
     * @return 数字加一后的值
     */
    public int[] plusOne(int[] digits) {
        
        //数字加一
        boolean carryFlag = false;
        digits[digits.length - 1]++;
        for (int i = digits.length - 1; i >= 0; i--) {
            digits[i] = digits[i] + (carryFlag ? 1 : 0);
            if (digits[i] >= 10) {
                carryFlag = true;
                digits[i] -= 10;
            } else {
                carryFlag = false;
                break;
            }
        }
        
        //判断是否有溢出位
        if (carryFlag) {
            int[] result = new int[digits.length + 1];
            result[0] = 1;
            for (int i = 1; i < result.length; i++){
                result[i] = digits[i - 1];
            }
            return result;
        } else {
            return digits;
        }
    }
}

END

© 著作权归作者所有

北风其凉

北风其凉

粉丝 120
博文 497
码字总数 462305
作品 4
朝阳
程序员
私信 提问
【Leetcode】【简单】【66. 加一】【JavaScript】

题目描述 66. 加一 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整...

孙达
09/07
0
0
JavaScript实现LeetCode第66题:加一

首文发表在 JavaScript实现LeetCode第66题:加一 题目描述 给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。 最高位数字存放在数组的首位, 数组中每个元素只存储一...

funnycoderstar
2018/09/10
0
0
[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. 将一......

机器的心脏
2017/12/11
0
0
LeetCode-Two Sum

作者: 一字马胡 时间:2018-04-01 题目描述 举个例子: 分析与解决 这道题属于较简单的题目,有很多种解决方法。题意也很明确,给一个数字序列,再给一个目标数,问是否可以在给定的数字序列...

一字马胡
2018/04/01
0
0
[算法][LeetCode] 数组

[算法][LeetCode]Search a 2D Matrix——二维数组的二分查找 http://www.cnblogs.com/hiddenfox/p/3402797.html 将排序的二维数组看做一维数组来处理。不重构数据的情况下,将二分查找的一维...

素雷
2017/10/19
7
0

没有更多内容

加载失败,请刷新页面

加载更多

uni app 零基础小白到项目实战

$emit 子组件传给父组件$ref 父组件操作子组件 公用模板 uni-app全局变量的几种实现方法 const websiteUrl = 'http'const now = Date.now || function() { return new Date().getTime......

达达前端小酒馆
34分钟前
7
0
Tomcat是如何实现异步Servlet的

前言 通过我之前的Tomcat系列文章,相信看我博客的同学对Tomcat应该有一个比较清晰的了解了,在前几篇博客我们讨论了Tomcat在SpringBoot框架中是如何启动的,讨论了Tomcat的内部组件是如何设...

木木匠
58分钟前
32
0
mysql中间件分享(Mysql-prxoy,Atlas,DBProxy,Amoeba,cobar,TDDL)

hello 各位小伙伴大家好,我是小栈君,这期我们分享关于mysql中间件的研究,也就是数据层的读写分离和负载均衡,希望能够在实际的应用中能够帮助到各位小伙伴。 下期我们将继续分享go语言的系...

IT干货栈
今天
16
0
OSChina 周一乱弹 —— 人生,还真是到处是意外

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @这次装个文艺青年吧 :#今日歌曲推荐# 分享lil peep的单曲《High School》 《High School》- lil peep 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
1K
13
Spring使用ThreadPoolTaskExecutor自定义线程池及实现异步调用

多线程一直是工作或面试过程中的高频知识点,今天给大家分享一下使用 ThreadPoolTaskExecutor 来自定义线程池和实现异步调用多线程。 一、ThreadPoolTaskExecutor 本文采用 Executors 的工厂...

CREATE_17
今天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部