美文网首页
有趣的程序猿思维备忘

有趣的程序猿思维备忘

作者: AibWang | 来源:发表于2019-01-12 20:19 被阅读0次

取两个整数的中间值

int left = 10;
int right = 15;
int mid;
mid = (left+right)/2;

上述一个简单的除以2操作,在程序猿眼中可以有多种优化:

  • 如果leftright很大,那么left+right就存在溢出的可能,因此可以使用另一种表达
mid = left+(right-left)/2;

这个思路同样适用于浮点数。

  • 整数除以2可以用位运算代替,计算机处理位运算的速度要比除法快很多,因此可以表示为:
mid = left+((right-left)>>1);

(注意:上述要注意的一个问题是运算优先级,位运算的优先级低于加减法,故不能将上述语句错写为mid = left+(right-left)>>1

相关文章

  • 有趣的程序猿思维备忘

    取两个整数的中间值 上述一个简单的除以2操作,在程序猿眼中可以有多种优化: 如果left与right很大,那么le...

  • 揭秘 | 为什么程序猿996会猝死,而企业家007却不会?

    来源:公众号程序员吴小胖 程序猿 企业家 程序猿 企业家 程序猿 企业家 程序猿 企业家 程序猿 企业家 程序猿 ...

  • 与程序猿男友的日常--养龟篇

    男友宿是一个典型的工科程序猿,平时脑袋里只有工作,编程,大数据。做事模式的也是程序猿思维,按部就班,不越雷池。最近...

  • 程序猿升职加薪指南

    不想升职加薪的程序猿也是好程序猿,但是不想升值加薪的程序猿却不是个好丈夫。 所以,本文主要对想成家娶媳妇的程序猿有...

  • 程序猿犯下的错

    程序猿是最好的职业,程序猿也是最糟糕的职业。牛逼的程序猿可以拯救世界,糟糕的程序猿也可以毁灭地球(也许有那么一天吧...

  • 程序猿锻炼思维的问题

    题目: 1.只使用两个水壶A(6升),B(5升)取水,如何取3升水 。2.有6个杯子,前三个装满水,后三个为空,只...

  • 豆爹是个程序猿

    我家豆爹是个程序猿,程序猿有程序猿的世界观和方法论,点滴记录一二以为新年开篇。 豆爹是个忙碌的程序猿,整日不在家。...

  • nuxt+axios解决前后端分离SSR

    ​背景:由于后端程序猿通常对CSS 、JS掌握不是特别好,通常的开发模式,UI把静态html做好交给程序猿,程序猿...

  • 程序员的江湖,黑话一定要牢记

    @IT程序猿 微博网友评论: @你家隔壁程序猿:程序猿的江湖,这些黑话要牢记 @风露儿:还好我是学C++的,PHP...

  • 趣图:单身程序员狗的一天

    扩展阅读 论程序员的思维逻辑有多强大! 一位单身程序猿的幸福回忆 趣图:这就是为什么程序员没有女朋友的原因!!

网友评论

      本文标题:有趣的程序猿思维备忘

      本文链接:https://www.haomeiwen.com/subject/uyncdqtx.html