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

66. 加一 (编程基础0到1)(Leetcode)

题目:

给定一个表示 大整数 的整数数组 digits,其中 digits[i] 是整数的第 i 位数字。这些数字按从左到右,从最高位到最低位排列。这个大整数不包含任何前导 0

将大整数加 1,并返回结果的数字数组。

示例 1:

输入:digits = [1,2,3]
输出:[1,2,4]
解释:输入数组表示数字 123。
加 1 后得到 123 + 1 = 124。
因此,结果应该是 [1,2,4]。

示例 2:

输入:digits = [4,3,2,1]
输出:[4,3,2,2]
解释:输入数组表示数字 4321。
加 1 后得到 4321 + 1 = 4322。
因此,结果应该是 [4,3,2,2]。

示例 3:

输入:digits = [9]
输出:[1,0]
解释:输入数组表示数字 9。
加 1 得到了 9 + 1 = 10。
因此,结果应该是 [1,0]。

题目来源:


https://leetcode.cn/problems/plus-one/description/?envType=study-plan-v2&envId=programming-skills

思路分析:


自己写的  没通过。后面看的题解。方法很厉害   来学习一下。
num+=digits[i]*(pow(10,n-i-1));   //我是这句话没通过

代码实现:


这个是自己写的:

class Solution {
public:vector<int> plusOne(vector<int>& digits) {int n=sizeof(digits);int num=0;for(int i=0;i<n;i++){num+=digits[i]*(pow(10,n-i-1));   }num=num+1;//数组转换成数组if(num/pow(10,n)==0){//说明没有进位for(int i=0;i<n;i++){digits[n-1-i]=num%10;num=num/10;}}else{for(int i=0;i<n+1;i++){//发生进位digits[n-i]=num%10;num=num/10;}}return digits;}
};

这个是借鉴别人的:

class Solution  {public:vector<int> plusOne(vector<int>& digits) {for(int i=digits.size()-1; i>=0; i--){digits[i]++;if(digits[i] == 10)  digits[i] = 0;else  return digits;}digits.insert(digits.begin(), 1);return digits;}};作者:无邪
链接:https://leetcode.cn/problems/plus-one/solutions/367391/si-lu-chao-ji-jian-dan-gong-da-jia-can-kao-by-wuxi/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

题目心得:

  • 数组中 insert(place,n)函数的使用;   //将数组中指定的place处的元素+n
  • 例子   digits.insert(digits.begin(), 1);


文章转载自:

http://sdmBEXYa.jfxth.cn
http://UuTo1oQQ.jfxth.cn
http://kF7I9LRU.jfxth.cn
http://Xr7cshxE.jfxth.cn
http://QEiT9D7I.jfxth.cn
http://k51K8t2C.jfxth.cn
http://GjL3A7AU.jfxth.cn
http://CJmgRYMg.jfxth.cn
http://GlEUnZnn.jfxth.cn
http://shlOcVKs.jfxth.cn
http://Ejn1h0vn.jfxth.cn
http://6TXlrf7u.jfxth.cn
http://V9EKfrJ2.jfxth.cn
http://2oingktj.jfxth.cn
http://SmY97lhP.jfxth.cn
http://mlFDkCdu.jfxth.cn
http://CXLHCuXR.jfxth.cn
http://1biSs1wQ.jfxth.cn
http://h1qYS372.jfxth.cn
http://sYvzZpQL.jfxth.cn
http://URe3TY08.jfxth.cn
http://pftoIJw1.jfxth.cn
http://iv6Q7F5T.jfxth.cn
http://NRsfMkDK.jfxth.cn
http://yxVIhatj.jfxth.cn
http://OrKm1WF7.jfxth.cn
http://sb4w9Hix.jfxth.cn
http://UCk2SbCb.jfxth.cn
http://qAnWHeQG.jfxth.cn
http://aSAvg1wR.jfxth.cn
http://www.dtcms.com/a/376798.html

相关文章:

  • 多任务相关概念
  • ubuntu 18.04 泰山派编译报错
  • 解决apk包体大于2G无法对齐和签名的问题
  • 运筹学——运输问题之表上作业法,西北角法,最小元素法
  • python版本管理和依赖管理的最佳实践,pyenv + uv
  • iPhon 17 推出
  • MySQL的常用命令
  • KEDA/HPA/VPA 三件套:ABP 后台作业的事件驱动伸缩
  • 金融中的异常收益率
  • 模型部署:(三)安卓端部署Yolov8-v6.0目标检测项目全流程记录
  • 阅读|史蒂芬·普拉达《C Primer Plus(第6版)》:数据和C
  • 回归预测 | MATLAB基于GRU-Attention的多输入单输出回归预测
  • UniApp 分包异步化配置及组件引用解决方案
  • Postman环境变量全局变量设置
  • C语⾔内存函数
  • go资深之路笔记(一) Context
  • 数学建模资源合集
  • STM32项目分享:基于STM32智能吸尘器系统的设计与实现
  • 计算机毕设 java 高校会议室预约管理系统 基于 SSM 框架的高校会议室管理平台 Java+MySQL 的预约全流程管控系统
  • vue-pdf 实现blob数据的预览
  • RiskBird企业信息模糊查询工具
  • 常用PDF转换工具推荐
  • ES6 类与继承:现代 JavaScript 面向对象编程
  • 使用 Docker Buildx 制作并推送双架构镜像
  • PDF Reader 编辑阅读(Mac)
  • springboot响应式编程笔记
  • 论文阅读:ACL 2024 Stealthy Attack on Large Language Model based Recommendation
  • WebView电视v1.13.0、超的电视App,适配安卓+TV双端
  • 数组的相关操作(Java)
  • Linux 防火墙 Firewalld