`
fansfirst2008
  • 浏览: 97880 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

小符号中效率的思考

阅读更多

 昨天看了下JDK源码里面二分法查找的实现,对于一个地方甚是奇怪!

 一般来说,想得到某个INT型变量除以2,假设是VAR,我只能想到的是VAR/2

 然而我确看到的是VAR>>>1.象这样的写法,记得好像汇编,或者C++里面应该有不少这么的小技巧!

 于是我对比了一下它们之间引起性能的差异,当数据在一万条左右,都是微乎其微的,但是当达到百万条时,差距就显现出来了!

 这个让我思考,为什么会有差距呢?

 难道除以2的底层实现不是>>>形式吗?

 我可以推断,如果底层的除以2一定包括>>>这么一个步骤的,也就是说除以2这个方式是>>>的超集!

 所以由此我得到了个简单的结论,除以2一定比>>>复杂许多.

 那么这个地方用哪种方式比较好呢?显然是最后那种,如果性能是第一位的话.但是如果程序是第一位的话,还是选择通用的吧!

精确的需求加上简单的处理可以提高性能!

通用的需求加上抽象的处理,可以提高程序的可读性,可维护性!

如何选择?适合才是最好的原则!

0
0
分享到:
评论

相关推荐

    一些常用的小符号图标

    总的来说,小符号图标是现代数字产品中不可或缺的元素,它们以直观的方式传达信息,提升用户体验。设计师和开发者需要理解不同类型的图标及其含义,熟练掌握各种设计工具,以创造出符合用户需求的高质量图标。在实际...

    利用边框border属性做的网页小符号

    在网页设计中,CSS(层叠样式表)的边框(border)属性是一个强大的工具,可以用来创造出各种视觉效果,其中包括简单的网页小符号。边框属性允许开发者给元素添加边框,包括边框的宽度(border-width)、颜色...

    利用边框border属性做小符号

    在这个例子中,我们看到了一个使用border属性创建的小符号。符号看起来像一个指向右下方的箭头,具体实现的CSS代码如下: ```css .fuhao { position: absolute; top: 12px; left: 12px; width: 0px; height: 0...

    使用“_”匹配字符.rar

    在编程和正则表达式的世界里,“_”(下划线)是一个常见的特殊字符,它在不同的上下文中...理解这个小符号在不同场景下的含义,对于提升编程和文本处理的效率至关重要。在使用时,务必根据具体上下文来决定它的功能。

    医学符号PPT模板.pptx

    医学符号PPT模板.pptx,图片显示的是一个白色是十字架,中间有心电图的标志。颜色以红色为主,适用于医疗医务、教学等主题。

    如何关掉笔记本触摸板.docx

    一般来说,这个快捷方式是 Fn+F9键,也就是在键盘上的 F9 键上有一个小长方框,在下方又用一条线将它分为了一大一小两个方框,最后整个大方框用一条斜线划掉的小符号。按下 Fn+F9 键就会关闭触摸板。但是,需要注意...

    zazu-emoji::high_voltage:快速,离线表情符号搜索Zazu

    Zazu表情符号 :high_voltage: 快速,离线的表情符号搜索Zazu! :chart_increasing: :grinning_cat_with_smiling_eyes: :face_with_tears_of_joy:用法将其添加到您的.zazurc.json文件: { " plugins " : [ " ...

    好用的放大镜

    这款“好用的放大镜”虽然看似简单,但它在实际使用中可以极大地提高工作效率,尤其对于设计师、程序员或者老年人来说,可以避免长时间盯着小字体或小图像导致的眼部疲劳。 实现这样的放大镜工具,主要涉及到以下几...

    WPS学会使用制表符排版.docx

    而制表符所对齐的位置,就被称为制表位,在WPS文档的标尺上会用一个黑色的小符号表示。 WPS中制表符有三个要素:制表位、对齐方式和制表位前导符号。制表位是对齐文本的位置,可以在WPS文档的标尺上设置。对齐方式...

    Arcgis10.1出图步骤要点.doc

    "ArcGIS 10.1 出图步骤要点" ArcGIS 10.1 是一款功能强大的 GIS 软件,对于出图操作具有重要影响。本文档总结了 ArcGIS 10.1 出图步骤要点,旨在帮助用户...遵循这些步骤可以快速掌握出图操作的要点,并提高工作效率。

    霍夫曼编码的C语言实现

    2. 将两个概率最小的符号合并,形成一个新的符号,其概率为两个小符号概率之和。 3. 重复步骤2,直到合并后的概率总和等于1。 4. 在合并过程中,概率较大的符号被赋予编码0,概率较小的符号被赋予编码1。 5. 记录每...

    win8系统下怎样使用蓝牙连接手机实现文件互传.docx

    - **操作步骤**:在Windows 8桌面的右下角任务栏区域,用户可以看到一个蓝牙图标(通常为蓝色或灰色的小符号)。这是近几年来新出的笔记本电脑所配备的一项功能。 **1.2 添加蓝牙设备** - **操作步骤**:右键点击...

    表情符号形状:of用表情符号制作形状!

    标题中的“表情符号形状:of用表情符号制作形状!”揭示了一个有趣的在线项目,它利用表情符号来创建各种形状。这个项目可能是一个互动的网页应用,让用户通过选择和组合不同的表情符号来构造图形,从而增强社交媒体...

    20春东北师大《英语语言学》在线作业1-0002【标准答案】.docx

    5. **音标与音素标记**:在更详细的转写(narrow transcription)中,一个音可以被一个带有小符号的符号转写,以标记更细微的区别。这个小符号被称为D选项的"diacritic"(音标修饰符)。 6. **源自人名或地名的词...

    WPS2021文字段落布局的使用技巧.docx

    - 在段落布局面板中,可以看到一个位于左上角的小符号,拖动这个符号可以轻松实现首行缩进的效果。 - 这一功能特别适用于正式文档中段落的格式化处理。 2. **调整段落间距**: - 在段落布局面板的边框四周,有多...

    岩性 符号

    大符号通常代表大面积的岩石单元,而小符号则可能表示局部的岩石变化或薄层。符号的上下位置反映了地层层序,即“上新下老”的原则,更年轻的地层位于上方,更老的地层位于下方。 岩性符号的使用还与地质年代学紧密...

    Word插入页码技巧.pdf

    如果希望页码更个性化,可以双击页脚区域进入编辑模式,然后通过“插入”菜单选择“符号”来添加小符号,比如点号或其他字符。同样,你可以插入图片作为页码,只需双击页脚,插入图片,调整到合适位置。如果想更改...

    编程代码显示字体合集

    在编程世界里,选择合适的字体是一项重要的任务,它关乎到开发者的工作效率和视觉舒适度。"编程代码显示字体合集" 提供了一系列专为代码显示优化的字体资源,旨在为编程爱好者和专业开发者提供更好的阅读体验,降低...

Global site tag (gtag.js) - Google Analytics