当前位置: 首页 > news >正文

微信公众号手机网站开发成都网站建设制作公司

微信公众号手机网站开发,成都网站建设制作公司,有哪些网站可以做外贸,个人简历模板下载 免费一、需求 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例: 输入: 38输出: 2 解释: 各位相加的过程为:3 8 11, 1 1 2。由于 2 是一位数,所以返回 2。 进阶: 你可以不使用循环或者递归,且…

一、需求

  • 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。

示例:

输入: 38输出: 2 
解释: 各位相加的过程为3 + 8 = 11, 1 + 1 = 2。由于 2 是一位数,所以返回 2。

进阶:
你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?

二、循环法、递归法

2.1  思路分析

  1. 题目既然提到了循环与递归,可以尝试着用这两种方法先解决;

2.2  循环法代码实现

class Solution {public int addDigits(int num) {int sum = 0;while(true) {sum = 0;while(num != 0) {int mod = num % 10;sum += mod;num = num / 10;}if(sum < 10) {//若这里用return代替break,则编译不会通过break;}num = sum;}return sum;}
}

2.3  递归法代码实现

class Solution {//该方法作用是返回num各位之和public int addDigits(int num) {if(num < 10) return num;int sum = 0;while(num != 0) {int mod = num % 10;sum += mod;num = num / 10;}return addDigits(sum);}
}

三、数学方法

3.1  思路分析

  1. 在数学上有个概念叫做树根,其含义就如题目描述的那样,每个自然数都有其对应的树根,本题的意思就是求正整数 n 的树根;
  2. 要求树根的规律:①n不是9的倍数,树根就是 n mod 9;②n是9的倍数,树根就是9;
  3. 为了方便计算,根据----Excel表列名称的思路:https://blog.csdn.net/Sruggle/article/details/113698482,设 9^a+x=n,a表示 n 中含有多少个9,x是n对应的树根,若等式两边直接对 9 求余,则 x 的范围只有 1~8,因此我们考虑在等式两边减1,得到9^a+x-1=n-1,这样等式两边对 9 求余后,x -1 的范围为 0~8 ,从而 x 的范围为 1~9;

3.2  代码实现

class Solution {public int addDigits(int num) {return (num - 1) % 9 + 1;}
}

3.3  复杂度分析

  • 时间复杂度为O(1);
  • 空间复杂度为O(1);

四、学习地址

作者:windliang

链接:https://leetcode-cn.com/problems/add-digits/solution/xiang-xi-tong-su-de-si-lu-fen-xi-duo-jie-fa-by-5-7/

http://www.lbrq.cn/news/2677411.html

相关文章:

  • wordpress主题图片路径免费seo快速排名工具
  • 国外高端网站免费网址注册
  • CSS3网站建设上海不限关键词优化
  • 地下城做解封任务的网站哪里有营销策划培训班
  • 怎么做视频网站教程百度排名优化工具
  • 做网站常州百度快照关键词推广
  • 网站欢迎屏怎么做推广吧
  • 万峰科技.jsp网站开发四酷全书 m百度联系电话
  • 网站开发涉及内容网上卖货的平台有哪些
  • 移动端网站开发项目代刷网站推广快速
  • 政府网站建设模式网店推广方案策划书
  • 嘉兴市平湖市建设局网站网站开发软件有哪些
  • 域度设计网站sem seo
  • WordPress二级目录404一个网站可以优化多少关键词
  • 网站没备案可以上线吗北京中文seo
  • 网站改版怎么做301重定向游戏推广代理加盟
  • xp 做网站服务器杭州百度快照优化公司
  • 自己电脑怎样做网站icp备案查询
  • 绍兴网站关键词推广营销技巧美剧
  • 荔湾区做网站公司做公司网站的公司
  • 建设个人网银网站南京疫情最新消息
  • 58网站模板广州网站优化公司
  • 网站建设费一般摊销几年产品推广营销方案
  • 多视频网站建设网络广告人社区
  • 可以做动感影集的网站百度收录情况查询
  • 宣城有木有专业做网站的福州网站建设
  • 手机优化怎么关闭惠州seo推广外包
  • 建网站网络推广优势百度seo2022新算法更新
  • 网页传奇网址湖北网站seo
  • 为什么做网站结构优化域名估价
  • 基于 Spring Boot 的登录功能实现详解
  • [go] 命令模式
  • JUC学习笔记-----ReentrantLock
  • MyBatisPlus插件原理
  • 为wordpress顶部header.php文件中调用不同的标题和摘要
  • 12. “static关键字是什么意思”,Java中是否可以覆盖(override)一个private或者是static的方法