66. 加一

题目:

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

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

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

 

示例 1:

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

示例 2:

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

示例 3:

输入:digits = [0]
输出:[1]

 

代码:

import java.util.ArrayList;
class Solution {
    public int[] plusOne(int[] digits) {
       int temp=1;
       var arraylist=new ArrayList<Integer>();
       for(int i=digits.length-1;i>=0;--i){           
          arraylist.add(0,(digits[i]+temp)%10);
          temp=(digits[i]+temp)/10;
       }
       if(temp!=0){arraylist.add(0,temp);}
       int[] res=new int[arraylist.size()];
       for(int i=0;i<arraylist.size();i++){
            res[i]=arraylist.get(i).intValue();
       }
      return res;
    }
}

 

代码2://真大佬写的,思路清晰,代码简洁,效率高 

class Solution {
    public int[] plusOne(int[] digits) {
        for(int i=digits.length-1;i>=0;--i){
            digits[i]++;
            digits[i]%=10;
            if(digits[i]!=0) return digits;
        }
        digits=new int[digits.length+1];
        digits[0]=1;
        return digits;
    }
}

 

 

posted @   堤苏白  阅读(48)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示