leetcode 65:Plus One

原创 2015年11月19日 21:33:54

题目:

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)数组低位代表数字的高位

2)最后如果还有进位,则需增加一位最高位1

实现如下:

class Solution {
public:
	vector<int> plusOne(vector<int>& digits) {
		int size = digits.size();
		if (size < 1) return digits;
		int flag = 0;
		if (digits[size - 1] > 8)
		{
			flag = 1;
			digits[size - 1] = digits[size - 1] - 9;
		}
		else
		{
			digits[size - 1] += 1;
			return digits;
		}
		for (int i = size - 2; i >= 0; --i)
		{
			if (i>0 && flag == 0) break;
			if (digits[i] > 8)
			{
				flag = 1;
				digits[i] = digits[i] - 9;
			}
			else
			{
				digits[i] += flag;
				flag = 0;
			}
		}
		if (flag == 1) digits.insert(digits.begin(), 1);
		return digits;
	}
};


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

Plus One -- LeetCode

原题链接: http://oj.leetcode.com/problems/plus-one/  这是一道比较简单的题目,对一个数组进行加一操作。但是可不要小看这个题,这个题被称为“Google最喜...
  • linhuanmars
  • linhuanmars
  • 2014年03月28日 07:04
  • 15256

【LeetCode with Python】 Plus One

Given a non-negative number represented as an array of digits, plus one to the number. The digits a...
  • nerv3x3
  • nerv3x3
  • 2014年07月06日 15:21
  • 2618

LeetCode Plus One Java版解题报告

LeetCode Plus One Java版解题报告 题意:一个整数按位存储于一个int数组中,排列顺序为:最高位在array[0] ,最低位在[n-1],例如:98,存储为:array[0]=9...
  • worldwindjp
  • worldwindjp
  • 2015年01月10日 23:03
  • 8413

LeetCode --- 66. Plus One

题目链接:Plus One Given a non-negative number represented as an array of digits, plus one to the number...
  • makuiyu
  • makuiyu
  • 2015年03月19日 21:53
  • 7176

[leetcode] 369. Plus One Linked List 解题报告

题目链接: https://leetcode.com/problems/plus-one-linked-list/ Given a non-negative number represented ...
  • qq508618087
  • qq508618087
  • 2016年06月28日 23:52
  • 2345

LeetCode 66 — Plus One(C++ Java Python)

题目:http://oj.leetcode.com/problems/plus-one/ Given a non-negative number represented as an arra...
  • dragon_dream
  • dragon_dream
  • 2014年04月02日 08:53
  • 3334

[leetcode]Plus One C语言

【题目】 Given a non-negative number represented as an array of digits, plus one to the number. The di...
  • noc_lemontree
  • noc_lemontree
  • 2015年08月27日 15:23
  • 680

LeetCode 369. Plus One Linked List(链表加1)

原题网址:https://leetcode.com/problems/plus-one-linked-list/ Given a non-negative number represented ...
  • jmspan
  • jmspan
  • 2016年06月29日 02:38
  • 1716

[leetcode-66]plus one(java)

问题描述: Given a non-negative number represented as an array of digits, plus one to the number.The dig...
  • zdavb
  • zdavb
  • 2015年07月30日 22:48
  • 683

Array-Plus One

Description: Given a non-negative integer represented as a non-empty array of digits, plus one to t...
  • LaputaFallen
  • LaputaFallen
  • 2017年11月26日 11:01
  • 49
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leetcode 65:Plus One
举报原因:
原因补充:

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