Leetcode算法题(C语言)8--加一
题目:加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。
示例 1:
输入: [1,2,3]
输出: [1,2,4]
解释: 输入数组表示数字 123。
示例 2:
输入: [4,3,2,1]
输出: [4,3,2,2]
解释: 输入数组表示数字 4321。
代码实现:
/** Return an array of size *returnSize.* Note: The returned array must be malloced, assume caller calls free().*/
int* plusOne(int* digits, int digitsSize, int* returnSize) {int len = digitsSize;int flag = 1;int bak_array[digitsSize + 1];int * array;/* 进位实现 */for(int i = digitsSize - 1; i >= 0; i--){if(digits[i] + flag > 9){if(i == 0){bak_array[i] = 1;bak_array[digitsSize] = 0;len = digitsSize + 1;}else{bak_array[i] = 0;}flag = 1;}else{bak_array[i] = digits[i] + flag;flag = 0;}}/* 为数组分配空间 */array = (int *)malloc(sizeof(int) * len);/* 返回数组大小赋值 */*returnSize = len;/* 将数据拷贝到动态分配的数组 */memcpy(array, bak_array, sizeof(int) * len);return array;
}
难点:
(1) 如果只有一位或者到了第一位进位后大于9,那么把第一位置1,最后一位的后一位置0.
(2) 如果不是第一位且加一后大于9,那么把该位置0并向前一位进位。
(3) 如果当前位加一不大于9,则不进行进位操作。
Leetcode算法题(C语言)8--加一相关推荐
- LeetCode算法题-Nth Digit(Java实现)
这是悦乐书的第215次更新,第228篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第83题(顺位题号是400).找到无限整数序列的第n个数字1,2,3,4,5,6,7,8 ...
- LeetCode算法题-K-diff Pairs in an Array(Java实现)
这是悦乐书的第254次更新,第267篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第121题(顺位题号是532).给定一个整数数组和一个整数k,您需要找到数组中唯一的k- ...
- LeetCode算法题-Jewels and Stones(Java实现)
这是悦乐书的第313次更新,第334篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第182题(顺位题号是771).字符串J代表珠宝,S代表你拥有的石头.S中的每个字符都是 ...
- LeetCode算法题-Repeated String Match(Java实现)
这是悦乐书的第289次更新,第307篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第156题(顺位题号是686).给定两个字符串A和B,找到A必须重复的最小次数,使得B是 ...
- 【算法】LeetCode算法题-Remove Duplicates from Sorted Array
这是悦乐书的第149次更新,第151篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第8题(顺位题号是26).给定一个已经排序(由小到大)的整数数组(元素可以重复),计算其 ...
- LeetCode算法题-Reverse Linked List(Java实现)
这是悦乐书的第192次更新,第195篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第51题(顺位题号是206).反转单链表.例如: 输入:1-> 2-> 3- ...
- LeetCode算法题-Convert a Number to Hexadecimal(Java实现)
这是悦乐书的第219次更新,第231篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第86题(顺位题号是405).给定一个整数,写一个算法将其转换为十六进制.对于负整数,使 ...
- LeetCode算法题-Minimum Depth of Binary Tree(Java实现)
这是悦乐书的第168次更新,第170篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第27题(顺位题号是111).给定二叉树,找到它的最小深度.最小深度是沿从根节点到最近的 ...
- LeetCode算法题-Valid Palindrome II(Java实现)
这是悦乐书的第287次更新,第304篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第155题(顺位题号是680).给定非空字符串s,最多可以删除一个字符. 判断它是否是回 ...
- LeetCode算法题-Factorial Trailing Zeroes(Java实现)
这是悦乐书的第183次更新,第185篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第42题(顺位题号是172).给定一个整数n,返回n!中的尾随零数.例如: 输入:3 输 ...
最新文章
- java B2B2C springmvc mybatis多租户电子商城系统-Spring Cloud Feign
- MyBatis 三种批量插入方式的比较,我推荐第3个!
- Caffe 中的卷积--权宜之计
- 哈佛计算机系硕士几年,2020年哈佛大学计算机信息硕士申请条件
- 探讨8.0版本下后台service存活机制及保活
- IDEA 修改JavaWeb的访问路径
- RTX5 | 内存池04 - 共享内存用于线程之间的通讯(阻塞方式)- 使用信号量
- java 中的this
- 搜索引擎的那些事(多线程web遍历)
- MATLAB学习笔记(1):MATLAB简介
- 让调查问卷数据告诉您更多意义的EnableQ在线问卷调查引擎V5.0发布
- 网站ping端口的操作方法和命令介绍
- linux下查看硬盘型号、大小等信息(含Raid)
- ubuntu下的3D桌面.compiz
- word文档删除空白页
- Py遇到Bad key “text.kerning_factor“ on line 4 in
- 麦克风阵列研究2 声源定位 python界面
- 总是半途而废?这四条建议让你培养习惯的成功率翻倍
- .Net Web开发技术栈 收藏
- android系统之apn相关
热门文章
- python惰性求值效果_让Python中类的属性具有惰性求值的能力
- 学习路上遇到的Error2
- opencv计算物体姿态旋转_物体的三维识别与6D位姿估计:PPF系列论文介绍(五)...
- 测试用例怎么写_如何高效组织自动化测试用例
- python多线程编程_python多线程编程(1): python对多线程的支持
- PyTorch:Faster-RCNN
- github 打不开_App更新不了? TF打不开? 试试这个
- swiper叠加轮播效果 (含源码) - 案例篇
- linux 关于目录的命令,Linux ---- 关于目录基本命令
- python串口编程_python串口通信