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

南昌建设企业网站灰色词首页排名接单

南昌建设企业网站,灰色词首页排名接单,vi设计作品图,健康码更新视频ps:题目来自力扣 两数相除 给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345 将被截断…

ps:题目来自力扣

两数相除

给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。

整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345 将被截断为 8 ,-2.7335 将被截断至 -2 。

返回被除数 dividend 除以除数 divisor 得到的  。

注意:假设我们的环境只能存储 32 位 有符号整数,其数值范围是 [−231,  231 − 1] 。本题中,如果商 严格大于 231 − 1 ,则返回 231 − 1 ;如果商 严格小于 -231 ,则返回 -231 。

class Solution {public int divide(int dividend, int divisor) {// 处理边界情况,当被除数为最小值且除数为 -1 时,结果会超出 32 位有符号整数范围,直接返回最大值if (dividend == Integer.MIN_VALUE && divisor == -1) {return Integer.MAX_VALUE;}// 判断结果的符号,通过异或运算判断两数符号是否不同boolean negative = (dividend ^ divisor) < 0;// 将被除数和除数都转换为负数,因为负数的范围更大,能避免溢出问题dividend = -Math.abs(dividend);divisor = -Math.abs(divisor);int result = 0;while (dividend <= divisor) {int tempDivisor = divisor;int multiple = 1;// 不断将除数翻倍,同时倍数也翻倍,直到翻倍后的除数大于当前被除数while (dividend - tempDivisor <= tempDivisor) {tempDivisor <<= 1;multiple <<= 1;}// 减去当前能减去的最大的除数倍数dividend -= tempDivisor;// 累加对应的倍数到结果中result += multiple;}// 根据之前判断的符号,决定结果的正负return negative ? -result : result;}
}

代码解释

本题要求在不使用乘法、除法和取余运算的情况下,计算两个整数的商,并且要考虑 32 位有符号整数的范围。我们可以采用减法和位运算的方法来模拟除法。

具体步骤

  1. 处理边界情况
    • 当被除数为 Integer.MIN_VALUE 且除数为 -1 时,商为 Integer.MAX_VALUE + 1,会超出 32 位有符号整数的范围,所以直接返回 Integer.MAX_VALUE
  2. 判断结果的符号
    • 通过异或运算 (dividend ^ divisor) < 0 判断被除数和除数的符号是否不同,如果不同则结果为负。
  3. 将被除数和除数转换为负数
    • 为了避免溢出问题,将被除数和除数都转换为负数,因为负数的范围比正数大。
  4. 模拟除法过程
    • 使用 while 循环,只要被除数小于等于除数,就继续进行除法操作。
    • 在每次循环中:
      • 初始化临时除数 tempDivisor 为除数,倍数 multiple 为 1。
      • 不断将 tempDivisor 翻倍,同时 multiple 也翻倍,直到 tempDivisor 大于当前被除数。
      • 用被除数减去 tempDivisor,并将 multiple 累加到结果 result 中。
  5. 根据符号返回结果
    • 根据之前判断的符号,决定最终结果的正负,如果为负则返回 -result,否则返回 result
http://www.dtcms.com/wzjs/254524.html

相关文章:

  • 哪个网站公司做的好网络营销的现状分析
  • 网站源代码购买店铺推广软文范例
  • Vantage wordpress主题惠州seo关键词推广
  • 深圳o2o网站建设seo网页优化公司
  • 大连网站建设推广龙岗网站建设
  • 重庆资质代办公司哪家好百度系优化
  • 做市场调研的网站网站快速排名推荐
  • php thml怎样做网站广州网站seo
  • 哈尔滨展览设计公司海南seo排名优化公司
  • 网站续费问题今天的最新新闻内容
  • 网站开发中网页上传和发布深圳互联网营销
  • 百度流量推广网络推广seo是什么
  • qq介绍网站做兼职是真的吗深圳知名seo公司
  • 做家教备课用什么网站qq刷赞网站推广
  • WordPress子站站群成都seo公司
  • 怎么在360做网站seo外包公司如何优化
  • 要做网站到哪里做长春网站建设策划方案
  • 计算机网站建设实训总结北京seo教师
  • 物理组简介 网站建设电商网站平台有哪些
  • seo工具大全seo外链推广工具下载
  • 公司网站建设的黑科技引流软件是真的吗
  • 摄影招聘网站seo简单优化
  • 专业网站设计是什么怎样做关键词排名优化
  • 做网站一般长宽多少热搜榜百度
  • 网站改标题不改版 k游戏合作渠道
  • 网站建设在未来的发展趋势百度关键词搜索
  • 做网站多少钱啊关键词看片
  • 一级a做爰网站下载企业新闻营销
  • 搜索引擎作弊网站有哪些云搜索app下载
  • 手机网站按那个尺寸做域名权重是什么意思