Leetcode_c++:Plus one(066)

原创 2016年06月02日 00:24:46

题目

Given a non-negative number represented as an array of digits, plus one to the number.

The digits are stored such that the most significant digit is at the head of the list.

//给一个用数组表示的数,加1后还是数组表示


算法

复杂度:O(N)
// 从右往左,如果到[0] 位还有进位,则需要(n.length_1)的数组


class Solution {
public:
    vector<int> plusOne(vector<int>& digits) {
        vector<int> tp(digits), ret;
        // 最低位加1
        tp[tp.size()-1]++;
        //  从低位到高位检查每一位是否需要进位
        for(int i=tp.size()-1;i>0;i--)
            if(tp[i]>=10){
                tp[i]%=10;
                tp[i-1]++;

            }else break;

            //若最高位需要进位,需要在vector 加一个元素
            if(tp[0]>=10){
                ret.push_back(1);
                tp[0]%=10;
            }

        // 从最高位到低位依次将每个元素存入ret
        for(int i=0;i!=(int)tp.size();++i)
            ret.push_back(tp[i]);

        return ret;

    }
};
版权声明:本文为博主原创文章,未经博主允许不得转载。

Plus One解题报告分析

Plus One
  • DallasSeller
  • DallasSeller
  • 2014年10月21日 15:43
  • 363

[LeetCode] Plus One - 整数字符转换相加

题目概述:Plus One - 整数加一 Given a non-negative number represented as an array of digits, plus one to the ...
  • Eastmount
  • Eastmount
  • 2015年09月09日 05:19
  • 1804

Plus One 十进制数加一@LeetCode

import java.util.Arrays; /** * Plus One * * Given a number represented as an array of digits, ...
  • hellobinfeng
  • hellobinfeng
  • 2013年10月15日 00:59
  • 5659

hdu 1024 Max Sum Plus Plus(动态规划+m子段和的最大值)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1024 Max Sum Plus Plus Limit: 2000/1000 MS (J...
  • qiqi_skystar
  • qiqi_skystar
  • 2016年01月28日 12:40
  • 2486

深度解读Adblock plus经历与底层算法实现

解读Adblock plus算法实现,分享查看Adblock plus源代码经历
  • X_Sirius
  • X_Sirius
  • 2015年08月04日 13:58
  • 2217

HTML5plus 移动 App开发入门

HTML5plus 移动 App开发入门   更新时间:2014年 4月 17日     HTML5 Plus 应用概述     HTML5 Plus 规范     通过 HTM...
  • wangyuchun_799
  • wangyuchun_799
  • 2014年07月11日 11:24
  • 55994

《C Primer Plus》视频教程

C语言之基础 1) C语言之简介 2) C语言之搭建开发环境 3) C语言之第一个简单程序的结构详解 4) C语言之书写规范和注释 5) C语言之数据类型 字符串和格式化输入输出 ...
  • huamu2017
  • huamu2017
  • 2017年03月25日 12:11
  • 1573

在普通网页中调用html5+的plus对象

//用法: HTML5+的plus对象,必须由click事件触发后,才能在普通网页中使用.所以在没有click的情况下,调用本文件可以解决问题! //在代码中使用: plusObj , 等同于plu...
  • malinjie66
  • malinjie66
  • 2016年08月11日 02:24
  • 3502

20. 利用Veeam ONE监控vSphere虚拟化平台(Veeam ONE安装及配置)

Veeam Backup & Replication主要用于备份及同步虚拟化平台,而Veeam ONE则主要用于监控平台之用,可以监控Veeam Backup & Replication的备份及同步情...
  • qq_35611533
  • qq_35611533
  • 2016年07月15日 15:16
  • 1467

[阶段总结]写在C++ Primer Plus后,C++ Primer前

这篇总结分为三个部分 一、总结这半年的学习生活情况。 二、总结学习C++ Primer Plus的一些收获 三、展望一下接下来半年应该如何开展学习工作 Ⅰ前半年的学习生活 1.参加了一次网易游戏...
  • xy_cpp
  • xy_cpp
  • 2017年06月07日 09:17
  • 638
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Leetcode_c++:Plus one(066)
举报原因:
原因补充:

(最多只允许输入30个字)