符号优先级误区一:移位运算符优先级比加减运算符低

2023-11-04

移位运算符优先级比加减运算符低

这是我在做二分查找时发现的问题

误区

发现问题

  • 直接除2
int mid = start + (end - start) / 2;
  • 移位的写法一
int mid = start + (end - start) >> 1;
  • 移位的写法二
int mid = start + ((end - start) >> 1);

实际结果

第一个跟第三个通过,第二个超时。为什么?

举例子证实

代码如下

public static void main(String[] args) {
        System.out.println(56 + (89 - 67)/2);
        System.out.println(56 + (89 - 67) >> 1);
        System.out.println(56 + ((89 - 67) >> 1));
    }

实际结果

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

符号优先级误区一:移位运算符优先级比加减运算符低 的相关文章

随机推荐

  • script 脚本标签中 defer 和 async (延缓 和 异步)

    原文章 https segmentfault com q 1010000000640869 本文章讲解几个点
  • 运营新人也可以做的副业平台丨闲鱼运营(下)

    文章上半部分给大家深度分享了关于闲鱼的赚钱方法和店铺权重建设该如何提升 如果没有看上半部分内容 直接翻阅主页就可以查阅到 接下来我们分享关于闲鱼运营的下半部分 店铺运营 闲鱼何运营总共分为三个部分 第一个部分是闲鱼养号 第二部分是内容编辑
  • K8s二进制部署-flanneld报(Couldn‘t fetch network config)

    1 报错提示 将网络配置信息写入了ETCD中 启动flanneld测试时一直报错 具体报错如下 root master1 tail 100f var log messages Dec 15 23 39 22 localhost flanne
  • 多文件编辑作业(2023.1.10)

    第一题 main c include head h int main int argc const char argv char str hello my student int start 0 int end strlen str 1 M
  • 提供一个用于计算两个point之间的距离方法_汇总

    作者 Tom Hardy Date 2020 02 18 来源 汇总 基于3D点云的深度学习方法 前言 三维数据通常可以用不同的格式表示 包括深度图像 点云 网格和体积网格 点云表示作为一种常用的表示格式 在三维空间中保留了原始的几何信息
  • 已解决报错UnboundLocalError: local variable ‘title‘ referenced before assignment

    1 今天抓取某网站的数据时 显示报错UnboundLocalError local variable title referenced before assignment Traceback most recent call last Fi
  • 无法启动64位idea,无法启动idea64.exe的一种原因(意外删除破解文件导致无法打开idea)

    前言 突然有一天 我的IDEA出现了问题 点击桌面快捷方式的idea毫无反应 无奈之下重装了IDEA 但还是有相同的问题 无法打开64位的idea 网上找了一堆博客 花了两个多小时终于解决了 写篇博客记录下这个问题 1 首先打开idea b
  • 初识网络安全(黑客技术)

    目录 前言 一 安全事件案例 二 网络安全行业公司 三 网络安全岗位 四 网络安全网站 五 src漏洞平台 总结 前言 网络安全是指保护计算机网络和网络上的数据免受未经授权的访问 使用 泄露 破坏和干扰的一系列措施和技术 在当今数字化时代
  • JAVA web 获取系统时间

  • ROS---保存地图

    建立save map sh文件夹 bin bash rosrun map server map saver f catkin ws src hypharos minicar launch map mymap 保存地图时我们进入此文件所在文件
  • 从零实现一套属于自己的UI框架-发布到npm

    汤小梦 https juejin im post 5e200ee86fb9a02fdd38986d 不知不觉马上就要放假了 写一篇文章祝愿 2020 越来越好 如今前端工程师的要求越来越高了 需要掌握的技术点越来越多了 会一些基本的前端技能
  • 华为云 CentOS 8 下 Nginx 1.20 & PHP 8.2 安装

    Nginx 1 20 版本安装 使用 dnf module 选择 nginx 版本 如果不选择 默认安装 1 14 版 1 先 RESET 一下 xxx ecs 209716 sudo dnf module reset nginx Repo
  • 子网划分,子网掩码

    1 IP地址分类 有类编址 所谓的同一网段就是 网络位一模一样 才叫在同一网段 否则不是在同一网段 网络位 主机位 固定电话的区号 025 主机你的电话号码 85562264 同一区号 之间 漫游费 南京 徐州 苏州 漫游 借助路由器转发我
  • Qt多线程中的moveToThread()的简单用法

    之前在项目中用到了Qt的多线程 因为以前用的一直是用一个类直接继承QThread 然后再重写run 方法 需要注意的是 QThread只有run函数是在新线程里的 其他所有函数都在QThread生成的线程里 后来查阅了一些资料才知道 Qt有
  • 00_Ubuntu系统入门

    目录 前言 一 Ubuntu系统安装 1 1 VMware15安装虚拟机不兼容 无法打开 1 2 Ubuntu联网问题 二 Ubuntu系统入门 2 1 Ubuntu系统初体验 2 2 Ubuntu终端操作 2 3 shell操作 2 3
  • 关于汇编语言寄存器和指令操作的整理

    最近汇编学到后面的内容 越来越觉得前面的基础没有掌握好 弄得最后编写汇编程序的时候 寄存器瞎用 没有一点的规矩 中断操作也不知道是对哪个寄存器里的数进行操作 每次做一个小程序 都得翻书后面的INT中断查询表 感觉很不爽 今天花了大半天把几本
  • 数据通信——因特网基础

    引言 之前最开始并接触学习的是华为的路由器交换机等知识 后来慢慢的扩充到了计算机网络 现在在备考计网专业课 因此写一下我对计网现阶段知识的认知 也是对考研备考时的一个复习 我将用易于理解的逻辑阐述下计网中难以理解的知识 希望大家也多多补充并
  • Visual C++ 运行窗口一闪而过的解决方法

    本文简单介绍了Visual C 编写运行程序的步骤 解决Visual C 2010开发环境中运行程序时运行窗口一闪而过的问题 总结了 断点调试 F5 方法 开始执行 Ctrl F5 方法 调试工具条方法 暂停语句或者输入等待方法 共4种方法
  • jvisualvm远程监控centos上虚拟机的状态

    要使用jvisualvm监视远程主机需要先再远程主机上运行jstatd 1 在 JAVA HOME bin目录下新建jstatd all policy文件 内容如下 grant codebase file java home lib too
  • 符号优先级误区一:移位运算符优先级比加减运算符低

    目录 移位运算符优先级比加减运算符低 误区 发现问题 实际结果 举例子证实 代码如下 实际结果 移位运算符优先级比加减运算符低 这是我在做二分查找时发现的问题 误区 发现问题 直接除2 int mid start end start 2 移