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

电子商务网站的设计与开发移动平台3g手机网站前端开发布局技巧汇总

电子商务网站的设计与开发,移动平台3g手机网站前端开发布局技巧汇总,宁波专业的网站搭建公司,广州应用网站设计摘要 剑指 Offer 43. 1~n 整数中 1 出现的次数 一、数学思维解析 将1~ n的个位、十位、百位、...的1出现次数相加,即为1出现的总次数。 设数字n是个x位数,记n的第i位为ni​,则可将n写为 nxnx−1⋯n2n1: 称" …

摘要

剑指 Offer 43. 1~n 整数中 1 出现的次数

一、数学思维解析

将1~ n的个位、十位、百位、...的1出现次数相加,即为1出现的总次数。

设数字n是个x位数,记n的第i位为ni​,则可将n写为 nxnx−1⋯n2n1:

  • 称" ni" 为 当前位 ,记为 cur ,
  • 将" ni−1ni−2⋯n2n1​ " 称为 低位 ,记为low ;
  • 将" nxnx−1⋯ni+2ni+1​ " 称为高位 ,记为high 。
  • 将10i称为位因子 ,记为digit。

某位中1出现次数的计算方法:根据当前位 cur值的不同,分为以下三种情况:

当 cur=0时: 此位1的出现次数只由高位 high决定,计算公式为:high×digit:

 当cur=1时: 此位1的出现次数由高位high和低位low决定,计算公式为:high×digit+low+1

当cur=2,3,⋯ ,9时 此位1的出现次数只由高位 high决定,计算公式为:(high+1)×digit:

package Math;/*** @Classname JZ43整数中1出现的次数* @Description TODO* @Date 2023/3/7 20:55* @Created by xjl*/
public class JZ43整数中1出现的次数 {/*** @description 整数中1出现的次数 * @param: n* @date: 2023/3/7 20:56* @return: int* @author: xjl*/public int countDigitOne(int n) {int digit = 1, res = 0;int high = n / 10, cur = n % 10, low = 0;while (high != 0 || cur != 0) {if (cur == 0) {res += high * digit;} else if (cur == 1) {res += high * digit + low + 1;} else {res += (high + 1) * digit;}low += cur * digit;cur = high % 10;high /= 10;digit *= 10;}return res;}
}

复杂度分析

  • 时间复杂度O(log⁡n): 循环内的计算操作使用O(1)时间;循环次数为数字n的位数,即log⁡10n,因此循环使用O(log⁡n)时间。
  • 空间复杂度 O(1) : 几个变量使用常数大小的额外空间。

二、暴力解析

一般是超时的选择

    /*** @description 相当于的暴力求解的顺序* @param: n* @date: 2023/3/7 21:15* @return: int* @author: xjl*/public int countDigitOne2(int n) {String result = "";for (int i = 1; i <= n; i++) {result += String.valueOf(i);}int count = 0;for (int i = 0; i < result.length(); i++) {if (result.charAt(i) == '1') {count++;}}return count;}

复杂度分析

  • 时间复杂度O(n): 循环内的计算操作使用O(1)时间;循环次数为数字n的位数,即log⁡10n,因此循环使用O(log⁡n)时间。
  • 空间复杂度 O(n) : 几个变量使用常数大小的额外空间。

博文参考

《leetcode》

http://www.yayakq.cn/news/607653/

相关文章:

  • 广州建设厅电工网站玉溪建设局门户网站
  • 辛集市住房和城乡建设厅网站免费的空间网站
  • 和孕妇做网站福建网站开发公司电话
  • wordpress头像本地化0字节百度seo点击工具
  • 怎样做旅游公司的网站中网站建设
  • 网站关键词的写法音乐网站建设视频教程
  • 维护网站是什么意思域名网站注册认证
  • 个人网站论坛展示重庆网站建设安全
  • 海南省生态文明村建设促进会网站如何自己创建网址
  • 海口个人建站模板so域名的网站
  • 如何开发电子商务网站遂宁市做网站的公司
  • 西安市城市建设档案馆官方网站端午节网页设计素材
  • 深圳做网站哪家公司专业下载软件网站
  • 网站建设+网络科技公司公司网站建设制作
  • ps模板下载网站wordpress 主题 翻译
  • 南宁网站建设多少钱wordpress支付宝流程
  • 思南县住房和城乡建设局网站微信表情开放平台官网
  • 婚庆公司网站建设响应式模板网站建设
  • 大连网站建设网站wordpress 访客文章
  • 营销型网站具备的二大能力义乌网站建设zisou8
  • 做公众号还是网站基于liferay portal的乡镇企业门户网站建设研究
  • 单位网站开发海洋网站建设公司
  • 购物网站介绍济南网站建设老威
  • 翻书效果网站站长工具seo推广秒收录
  • 虎扑的网站是用什么技术做的做网站导航按钮怎么做
  • 网站开发建立站点道县找人做网站
  • 商城网站建设用乐云seo系统做网站优化
  • 南昌好的做网站的公司中国最新的军事新闻
  • 常用网站图标网页设计应该学什么专业
  • 网站登录人太多进不去怎么办昆明网站开发公司电话