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

中国建设银行江西分行网站首页番茄网络营销策划方案

中国建设银行江西分行网站首页,番茄网络营销策划方案,易语言网站批量注册怎么做,深圳论坛前言 溢出问题是面试当中输出涉及到数字的一个需要特别注意的地方#xff0c;典型的题目有三个#xff1a;数字反转#xff0c;将字符串转成数字和回文数。 1.整数反转 力扣7题#xff0c;给你一个 32 位的有符号整数 x #xff0c;返回将 x 中的数字部分反转后的结果。…前言 溢出问题是面试当中输出涉及到数字的一个需要特别注意的地方典型的题目有三个数字反转将字符串转成数字和回文数。 1.整数反转 力扣7题给你一个 32 位的有符号整数 x 返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [ − 2 31 , 2 31 − 1 ] [−2^{31}, 2^{31} − 1] [−231,231−1]就返回 0。假设环境不允许存储 64 位整数有符号或无符号。 分析这个问题处理时需要考虑两点:1.如何反转数字2.反转后的数字是否会溢出。反转比较简单我们可以使用循环取模取余的方法也就是一边左移一边处理末尾数字。以33156为例循环取模然后为了得到末尾数字循环取余即可得到65133最后反转拼接。 按照循环取模只要最后输入的x ! 0即可终止。 对于溢出比如1245221927这个数反转过来就是7291225421已经比最大的32位整数都要大了如果一个整数num MAX_VALUE, 其中MAX_VALUE 214746483647 那么就有如下规律 nums / 10 MAX_VALUE / 10 214748364,也就是如果底数第二位大于4了那么最后一位是什么都已经溢出了 如上图所示 当num / 10 214748364那肯定会溢出当num / 10 214748364需要考虑上图第三四五排数字如果末尾数字 7说明溢出当num / 10 214748364说明没问题 完整实现代码如下 // 循环取模取余 function reverse(x) {let res 0;while (x ! 0) { // 获得末尾数字let tailNum x % 10;// 判断是否超出最大32位整数if (res 214748364 || (res 214748364 tailNum 7)) {return 0;}// 判断是否超出最小32位整数if (res -214748364 || (res -214748364 tailNum -8)) {return 0;}res res * 10 tailNum;// Math.floor() 函数总是返回小于等于一个给定数字的最大整数,对于负数精确度不够x ~~(x / 10); // ~~ 是相当于 parseInt,这里存在一个关于浮点数的精确度问题}return res; }2.字符串转整数 这道题在我的另外一篇文章已经讲过这里不再重复。算法通关村第十二关——不简单的字符串转换问题 3.回文数 力扣9题给你一个整数 x 如果 x 是一个回文整数返回 true 否则返回 false 。回文数是指正序从左向右和倒序从右向左读都是一样的整数。 例如121 是回文而 123 不是。 分析第一个想法是将数字转换为字符串并检查字符串是否为回文。但是这需要额外空间来创建问题描述中所不允许的字符串。 第二个想法是将数字本身反转然后将反转后的数字与原始数字进行比较如果相同说明是回文。 但如果反转后的数字大于int.MAX就会遇到整数溢出问题。 其实只要改进一下第二个想法就可以避免数字反转可能导致的溢出问题我们可以只反转数字的一半因为如果数字是回文其后半部分反转后应该与原始数字的前半部分相同。 例如输入 142241我们可以将数字 “142241” 的后半部分从 “241” 反转为 “142”并将其与前半部分 “142” 进行比较因为二者相同得知数字 14241 是回文数。 代码如下 function isPalindrome(x) {// 特判 如果x 0或者x % 10 0 x ! 0if (x 0 || (x % 10 0 x ! 0)) {return false;}let reversedNum 0;// 循环取模取余来反转数字,反转一半数字来进行比较如果是回文整数// 则反转的一半应当等于未反转的的那一半while (x reversedNum) {reversedNum reversedNum * 10 x % 10;x parseInt(x / 10);}// 当数字长度为奇数时可以通过 parseInt(reversedNum / 10)去除处于中间的数字// 例如当输入 x 23232 时在循环的末尾可以得到 x 23, reversedNum 232,// 由于处于中间的数字不影响回文它总是与自己相等所以可以简单地将其去除。return x reversedNum || x parseInt(reversedNum / 10); }
http://www.zqtcl.cn/news/212797/

相关文章:

  • 揭东建设局网站wordpress建站后发布
  • 济南哪里有建网站制作视频的手机软件
  • 建设教育网站的国内外研究现状沧州市宇通网站建设公司
  • 大型网站开发框架有哪些厦门外贸网页设计服务
  • 开网站空间流量怎么选择公司注册咨询电话
  • 邢台网站建设基本流程网站制作公司教你怎么制作网站
  • 苏州网站建设方案外包视频网站制作教程视频
  • 呼伦贝尔市规划建设局网站wordpress 主题切换
  • 建设网站的要求吗网站怎么建立
  • 网站结构有哪些建设局平台
  • 高端网站建设公司服务好吗有哪些制作网站的公司
  • 网站整站模板下载工具淮安网站建设案例
  • 网站前台用什么做广东省网站设计师
  • 汕头网站建设公司哪个好百度公司注册地址
  • 创建网站需要什么平台wordpress 卡盟模板
  • 网站开发常用的流程肃宁网站建设公司
  • 站内关键词自然排名优化绍兴网络公司
  • 益阳网站seo免费建造公司网站
  • 网站推广报价教你免费申请个人平台
  • 企网站建设wordpress文章批量上传
  • 福州seo建站网站的icp备案信息是什么
  • 腾讯分分彩做号网站广州顶正餐饮培训学校
  • 低价网站建设制作设计公司网站怎样做地理位置定位
  • 贵州网站seo织梦网站后台默认登陆路径
  • 杭州网站设计哪家公司好百度搜索网站显示图片
  • 新乡专业做淘宝网站房地产平面设计网站
  • 三亚谁做网站做网站导航的
  • 厦门酒店网站建设建设网站文案
  • 17网站一起做网店质量怎么样合肥网站建设维护
  • 建站公司外包怎么搭建手机网站m