C#算法中怎么实现各位相加
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,本文小编为大家详细介绍"C#算法中怎么实现各位相加",内容详细,步骤清晰,细节处理妥当,希望这篇"C#算法中怎么实现各位相加"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。各
千家信息网最后更新 2025年01月18日C#算法中怎么实现各位相加
本文小编为大家详细介绍"C#算法中怎么实现各位相加",内容详细,步骤清晰,细节处理妥当,希望这篇"C#算法中怎么实现各位相加"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
各位相加
给定一个非负整数 num
,反复将各个位上的数字相加,直到结果为一位数。
示例:
输入: 38输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。
进阶:
你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?
代码模板
public class Solution { public int AddDigits(int num) { }}
测试数据
输入 1输出 1输入 10输出 1输入 38输出 2输入 199输出 1输入 8888输出 5
笔者的方法:
使用了while循环,除一次计算一次,原始数和各位数和同时变化。时间在70ms内。
public static int Csum(int num) { if (num < 10) //小于10的数直接返回 return num; int shi = 0; //记录个位数相加 while (num > 0) { if (num >= 10) { shi += num % 10; num = num / 10; } else if (num < 10) { shi += num; num = num / 10; } if (shi >= 10) shi = shi % 10 + shi / 10; //超过10的个位数重新变化 } return shi; }
方法二 弃九验算法
同样在 60-70ms
public class Solution { public int AddDigits(int num) { if(num==0) return 0; if(num%9==0) return 9; return num%9; }}
读到这里,这篇"C#算法中怎么实现各位相加"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
输入
输出
算法
C#
文章
个位
位数
内容
方法
时间
变化
循环
原始
复杂
妥当
个位数
代码
复杂度
思路
数字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
金地数据库已锁定
数据库b s c s区别
sql数据库用户权限在哪
太原鲲鹏系列服务器
山东专业软件开发设施推广
数据库如何禁止远程连接本地
网络安全的演讲稿800字
惠州数据链软件开发回收价
网络安全外包服务管理制度
服务器网络安全关键件
独立服务器和云服务器
吉林专业软件开发服务价钱
鲲鹏服务器能应用于嵌入式开发吗
黑洞服务器网站地址是什么
焦作软件开发成交价
网络安全股走向
建立数据库sql语句怎么操作
网络安全手抄报最适合画什么
CFPS数据库验证码不正确
cs 服务器
金地数据库已锁定
巨杉数据库 csdn
铁桥网络技术
软件开发行业销售费用占比
吉林专业软件开发服务价钱
数据库的更新周期
车载软件开发需要什么
网际组态软件数据库
网络安全手抄报字少超简单
数据库sql的内容