LeetCode 66 加一
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 66 加一
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原題鏈接
關鍵詞 :數組? 模擬法
解題思路:
此題為處理數組,數組特點? --數組下標? 可以前后覆蓋? 數組元素可交換等。
此題分為三種情況?
1.傳入數為234形式? ?,加一后無進位。直接在最后一個數組+1即可
2.傳入數為239形式,即末尾數為9需要進位,末尾置為0,前一位+1
3.傳入數為999形式,即各個位置都需要進位。此時需要將數組 array[0] 位置設置為1? 在尾部push_back(0)?
?
題解代碼如下
#include<iostream> #include<vector> using namespace std; class Solution { public:vector<int> plusOne(vector<int>& digits) {int len = digits.size(); //計算傳入數組元素的個數for (int i = len - 1; i >= 0; i--)//取最后一個元素開始處理{if (digits[i] == 9)digits[i] = 0;else{digits[i]++;//for循環至第二次再前處理前一個數return digits;}}digits[0] = 1;//當為9999的情況digits.push_back(0);//尾部加入0return digits;} };?
總結
以上是生活随笔為你收集整理的LeetCode 66 加一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工行补卡需要去开户行吗?
- 下一篇: LeetCode 217 存在重复元素