• 高考前一天,六月六号,加一!


    
     

    640?wx_fmt=jpeg

    明天就是高考,祝广大考生顺利完成从高中到大学的加一进位之旅。

    今天分享的题目来源于 LeetCode 上第 66 号问题:加一。题目难度为 Easy,目前通过率为 39.0% 。

    题目描述

    给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。

    最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。

    你可以假设除了整数 0 之外,这个整数不会以零开头。

    示例 1:

    输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。
    输出: [1,2,4]
    解释: 输入数组表示数字 123。

    示例 2:

    输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。
    输出: [4,3,2,2]
    解释: 输入数组表示数字 4321。

    示例 3:

    //为了更好理解题意,根据 LeetCode 评论区评论新增一个示例输入: [9,9]输出: [1,0,0]解释: 输入数组表示数字 100。输入: [9,9]
    输出: [1,0,0]
    解释: 输入数组表示数字 100。

    题目解析

    本题很简单,题目意思也很好理解,注意的点就是 进位问题

    动画描述

    640?wx_fmt=gif

    640?wx_fmt=gif

    代码实现

    public class Solution {    public int[] plusOne(int[] digits) {        int n = digits.length;        //从数组末尾开始向前遍历        for (int i = digits.length - 1; i >= 0; --i) {            if (digits[i] < 9) {                digits[i]++;                //没有进位,直接返回                return digits;            }            //产生进位,需要将该位赋值为 0             digits[i] = 0;        }        //整体产生了进位,数组长度需要变化加 1        int[] res = new int[n + 1];        res[0] = 1;        return res;    }}class Solution {
        public int[] plusOne(int[] digits) {
            int n = digits.length;
            //从数组末尾开始向前遍历
            for (int i = digits.length - 1; i >= 0; --i) {
                if (digits[i] < 9) {
                    digits[i]++;
                    //没有进位,直接返回
                    return digits;
                }
                //产生进位,需要将该位赋值为 0 
                digits[i] = 0;
            }
            //整体产生了进位,数组长度需要变化加 1
            int[] res = new int[n + 1];
            res[0] = 1;
            return res;
        }
    }

    题外话

    明天就是高考,祝广大考生顺利完成从高中到大学的加一进位之旅。

    今天是高考前一天,六月六号,距离我的高考已过去十年。

    我女朋友是高中同学,小名叫六六。

    我永远爱她。

    也祝大家顺利找到自己的另外一半,加一!

    640?wx_fmt=png


  • 相关阅读:
    Javascript在使用import 与export 区别及使用
    【repost】Python正则表达式
    js常见算法
    【repost】 JS变量重复声明以及忽略var 声明的问题及其背后的原理
    【repost】javascript callback
    【repost】js window对象属性和方法相关资料整理
    Donald Knuth
    前端知识体系
    【repost】让你一句话理解闭包(简单易懂)
    【repost】图解Javascript上下文与作用域
  • 原文地址:https://www.cnblogs.com/csnd/p/16675356.html
Copyright © 2020-2023  润新知