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

做网站的企业广州wordpress恢复数据库文件

做网站的企业广州,wordpress恢复数据库文件,wordpress 项目,自动下单网站开发内容介绍 给你两个整数#xff0c;被除数 dividend 和除数 divisor。将两数相除#xff0c;要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断#xff0c;也就是截去#xff08;truncate#xff09;其小数部分。例如#xff0c;8.345 将被截断为 8 #xff0c;-…内容介绍 给你两个整数被除数 dividend 和除数 divisor。将两数相除要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断也就是截去truncate其小数部分。例如8.345 将被截断为 8 -2.7335 将被截断至 -2 。 返回被除数 dividend 除以除数 divisor 得到的 商 。 注意假设我们的环境只能存储 32 位 有符号整数其数值范围是 [−231,  231 − 1] 。本题中如果商 严格大于 231 − 1 则返回 231 − 1 如果商 严格小于 -231 则返回 -231 。 示例 1: 输入: dividend 10, divisor 3 输出: 3 解释: 10/3 3.33333.. 向零截断后得到 3 。 示例 2: 输入: dividend 7, divisor -3 输出: -2 解释: 7/-3 -2.33333.. 向零截断后得到 -2 。 提示 -231 dividend, divisor 231 - 1divisor ! 0 完整代码 class Solution {public int divide(int dividend, int divisor) {if (dividend Integer.MIN_VALUE) {if (divisor 1) {return Integer.MIN_VALUE;}if (divisor -1) {return Integer.MAX_VALUE;}}if (divisor Integer.MIN_VALUE) {return dividend Integer.MIN_VALUE ? 1 : 0;}if (dividend 0) {return 0;}boolean rev false;if (dividend 0) {dividend -dividend;rev !rev;}if (divisor 0) {divisor -divisor;rev !rev;}int left 1, right Integer.MAX_VALUE, ans 0;while (left right) {int mid left ((right - left) 1);boolean check quickAdd(divisor, mid, dividend);if (check) {ans mid;if (mid Integer.MAX_VALUE) {break;}left mid 1;} else {right mid - 1;}}return rev ? -ans : ans;}public boolean quickAdd(int y, int z, int x) {int result 0, add y;while (z ! 0) {if ((z 1) ! 0) {if (result x - add) {return false;}result add;}if (z ! 1) {if (add x - add) {return false;}add add;}z 1;}return true;} } 思路详解 整体思路 该代码实现了一个整数除法功能主要解决以下问题 处理特殊边界情况如被除数或除数为整数最小值。处理除数为0的情况。通过二分查找确定商的大小。使用快速乘法判断二分查找中的中间值是否满足条件。 详细步骤 处理特殊边界情况 当被除数为Integer.MIN_VALUE时需要单独处理除数为1和-1的情况因为直接计算会导致溢出。当除数为Integer.MIN_VALUE时只有当被除数也是Integer.MIN_VALUE时商为1否则为0。 处理除数为0的情况 当被除数为0时直接返回0。 统一处理负数 将被除数和除数都转换为负数这样只需考虑一种情况。同时记录转换次数最后根据转换次数确定返回值的正负。 二分查找确定商的大小 初始化左边界为1右边界为Integer.MAX_VALUE。在二分查找过程中计算中间值mid并使用快速乘法判断mid * divisor是否大于等于dividend。如果满足条件更新答案ans并将左边界更新为mid 1否则将右边界更新为mid - 1。 快速乘法 由于不能使用除法使用快速乘法来判断mid * divisor是否大于等于dividend。通过位运算和加法模拟乘法操作同时避免溢出。 代码注释说明 rev记录被除数和除数转换为负数的次数用于最后确定返回值的正负。quickAdd快速乘法函数用于判断y * z是否大于等于x。left、right、ans二分查找的左边界、右边界和当前答案。mid二分查找的中间值。check用于判断mid * divisor是否大于等于dividend。 知识点精炼 特殊情况处理 整数最小值处理Integer.MIN_VALUE作为被除数或除数的情况防止溢出。除数为0明确除数为0时结果为0。 负数统一处理 符号转换将被除数和除数统一转换为负数简化问题处理。符号记录使用布尔变量记录被除数和除数的符号转换次数以确定最终结果的符号。 二分查找 查找范围初始化左边界为1右边界为Integer.MAX_VALUE。中间值计算使用位运算计算中间值避免溢出。条件判断通过快速乘法判断中间值是否满足条件。 快速乘法 位运算利用位运算模拟乘法操作避免直接使用乘法导致溢出。加法替代通过加法累加结果判断是否满足条件。 防溢出 边界检查在计算过程中确保不发生溢出。无除法全程不使用除法操作避免因除法导致的精度问题。
http://www.dnsts.com.cn/news/83589.html

相关文章:

  • 浙江电商网站建设销售辽宁建筑工程网
  • 哪个建站平台较好泰国网站后缀
  • 河南企业网站优化建筑工程公司黄页
  • 网站备案后有什么好处icp许可证
  • 遵义高端网站建设我的网站搜索不到了
  • 一元夺宝网站建设wordpress作者认证
  • 外贸汽车网站制作购物网站的设计
  • 营销型网站托管莱州网站设计
  • 域名注册哪个平台比较好东莞关键词优化排名
  • 国外网站设计 网址成都装修公司前十名
  • 电子商务网站建设内涵东台做网站哪家便宜
  • 济源做网站怎么收费免费app开发工具
  • 郑州企业建站免费咨询广州知名网站建设后台管理便捷
  • 苏州高端网站建设机构福建省建设工程信息网
  • 网站建设费是无形资产吗重庆排名前十的互联网公司
  • 上海专业网站建设网wordpress忘记后台账号
  • 正确建设企业网站福田服务商app软件安装
  • 企业的网站建设公司wordpress后台主题
  • 徐州网站优化推广团购网站建立
  • 汝城县网站建设公司南京外贸网站建设报价
  • 网站样式模板下载丽江网站开发找千素网
  • 创建网站要钱吗石家庄网站建设推广公司电话
  • 公司主页网站开发开发公司副总求职简历
  • 成功的营销网站怎样修改手机网站首页
  • 好网站建设公司选择哪家好360下载
  • 清远市网站建设宝山做手机网站建设
  • 宽屏大气企业网站源码河南网站建设运营域名注册公司
  • 视频网站怎么建设鄂州网站开发
  • 中国行业网站联盟秦皇岛网站制作代理商
  • asp.net mvc5网站开发绵阳网站搜索排名