leetcode第一刷_Plus One
2024-09-04 11:38:01
这种相似大整数的处理的问题还是比較常见的,这道题应该是很easy的版本号。
题目的要求是这种,输入的vector靠前的位置是数字的高位。因此应该先求出长度。然后从后面往前算。维护一个变量保存进位。这我就不说了。结果的vector怎么办呢?由于最后有可能有个总的进位,比方999加1,结果的vector会比输入的多出一位,因此结果还是从前往后存简单一些。最后假设有进位,就多push_back一个1,然后reverse一下即可了,我当时不知道这个函数。所以又献丑了。
class Solution {
public:
vector<int> plusOne(vector<int> &digits) {
vector<int> res;
int t = digits[digits.size()-1] + 1;
int c = t/10, k=0;
res.push_back(t%10);
for(int i=digits.size()-2;i>=0;i--){
if(c){
int t = digits[i]+c;
res.push_back(t%10);
c = t/10;
}else{
res.push_back(digits[i]);
}
}
if(c)
res.push_back(1);
int len = res.size();
for(int i=0;i<len/2;i++){
int t = res[i];
res[i] = res[len-i-1];
res[len-i-1] = t;
}
return res;
}
};
最新文章
- js库
- innobackupex --rsync 报错 Error: can&#39;t create file (null)/xtrabackup_rsyncfiles_pass1
- Sqlserver_视图
- 调用WEKA包进行kmeans聚类(java)
- PBOC2.0与PBOC3.0的区别
- CloudStack采用spring加载bean(cloud-framework-spring-module模块)
- NDK(12)Jni常用函数
- CacheManager
- swift(2)元祖(Tuple)
- PHP面向对象-看父类调用子类方法
- Python的魔法函数系列 __getattrbute__和__getattr__
- Python几周学习内容小结
- liunx----配置搜狗输入法
- iOS 中的Certificate,Provisioning Profile 的一些注意 (不断完善中)
- python算法双指针问题:两个有序数组的合并
- RedHat使用Centos的yum仓库
- VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示
- H.264 White Paper学习笔记(一)总览
- JVM内部细节之二:偏向锁(Biased Locking)
- Helm 入门安装指南
热门文章
- SQL异常捕获
- Microsoft office 2016 for Mac 破解版下载安装
- 一步步带你做vue后台管理框架
- 页面跳转问题-button 确定提交按钮
- ubuntu系统在安装好mysql后,出现ERROR 2002(HY000: Can&#39;t to local MySQL server through socket &#39;/var/run/mysqld/mysqld.sock&#39;)(2)(图文详解)
- 坐标深圳 | Kubernetes!我要用这样的姿势拥抱你
- 获取top10
- JavaScript基础(String)
- CTF传送门
- Mac安装Gradle eclipse安装buildship插件