当前位置: 首页 > article >正文

力扣66 加一

class Solution:
    def plusOne(self, digits: List[int]) -> List[int]:
        # 从最低位开始加一
        for i in range(len(digits) - 1, -1, -1):
            if digits[i] < 9:
                digits[i] += 1
                return digits
            digits[i] = 0
        
        # 如果所有位都是9,需要增加一位,例如 999 -> 1000
        return [1] + [0] * len(digits)
int* plusOne(int* digits, int digitsSize, int* returnSize) {
    // 初始化返回数组的大小为 digitsSize
    *returnSize = digitsSize;
    
    // 从最低位开始加一
    for (int i = digitsSize - 1; i >= 0; i--) {
        if (digits[i] < 9) {
            digits[i]++;
            return digits;
        }
        digits[i] = 0;
    }
// 如果所有位都是9,需要增加一位,例如 999 -> 1000
    *returnSize = digitsSize + 1;
    int* newDigits = (int*)malloc((*returnSize) * sizeof(int));
    
    if (newDigits == NULL) {
        *returnSize = 0;
        return NULL;  // 内存分配失败,返回空指针
    }
    
    newDigits[0] = 1;
    for (int i = 1; i < *returnSize; i++) {
        newDigits[i] = 0;
    }
    
    return newDigits;
}

 

 


http://www.kler.cn/a/471058.html

相关文章:

  • 使用 Conda创建新的环境遇到的问题
  • 形态学:图像处理中的强大工具
  • OpenCV轮廓相关操作API (C++)
  • 【前端系列01】优化axios响应拦截器
  • 我在广州学 Mysql 系列——有关数据表的插入、更新与删除相关练习
  • 点击主图,触发的是查看产品详情的逻辑
  • C# in 参数修饰符的使用
  • 特制一个自己的UI库,只用CSS、图标、emoji图 日后慢用!!!
  • Win11+WLS Ubuntu 鸿蒙开发环境搭建(一)
  • ubuntu开机启动服务
  • INT305 Machine Learning
  • Docker Compose 启动 Harbor 并指定网络
  • Power BI如何连接Azure Databricks数据源?
  • 什么是Lua协同程序?和线程有什么区别?
  • vue.js sync修饰符
  • STM32拓展 低功耗案例1:睡眠模式 (hal)
  • 【学习笔记】数据结构(十)
  • NLP三大特征抽取器(CNN/RNN/TF)
  • 【Uniapp-Vue3】navigator路由与页面跳转
  • Elasticsearch与数据库数据一致性:最佳实践与解决方案
  • 基于大数据爬虫+Python+数据可视化大屏的慧游数据爬虫与推荐分析系统(源码+论文+PPT+部署文档教程等)
  • Linux 安装 meilisearch
  • NUTTX移植到STM32
  • c#使用SevenZipSharp实现压缩文件和目录
  • Appium(一)--- 环境搭建
  • 【简博士统计学习方法】1. 统计学习的定义与分类