不用if比较两个数大小
来源:互联网 发布:windows配置ftp服务器 编辑:程序博客网 时间:2024/06/07 10:59
最近去面试遇到一个很新鲜的题目和大家分享下:
一、题目:有两个变量a,b,不用“if”,“? :”,switch或者其它判断语句,找出两个数中间比较大的?
二、
/*方法1:取平均值法大的为 ((a+b)+abs(a-b)) / 2小的为 (a+b - abs(a-b)) / 2*/int fMax1(int a, int b){ return ((a+b)+Math.abs(a-b)) / 2; }
/*方法2:不使用abs()a<b时,a/b=0,所以前面为b*(b/a),后面为b/a,那么结果就是ba=b时,a/b=1,所以前面为a+b=2a,后面为2,那么结果就是aa>b时,b/a=0,所以前面为a*(a/b),后面为a/b,那么结果就是a*/int fMax2(int a, int b){ int larger = (a*(a/b) + b*(b/a))/(a/b + b/a); //long smaller = (b*(a/b) + a*(b/a))/(a/b + b/a); return larger;}
还有很多方法,参考:http://blog.csdn.net/xiaocha2008/article/details/6786989
0 0
- 不用if比较两个数大小
- 不用if比较两个数大小
- 不用if比较两个数大小
- 不用if比较两个数大小
- 不用大于、小于、if语句比较两个数的大小
- [C++]不用if比较两个数大小
- 程序员面试宝典p40----不用if比较两个数大小
- 两个数比较,不用“if”,“? :”,“switch”
- 不用if ,switch ? :比较两个整型数
- 一个宏比较两个数的大小(不用>,if语句)
- 不用那if,switch,?:语句判断两个数的大小
- 不用比较运算符比较两个数的大小
- 不用比较运算符比较两个数的大小
- 不用比较语句比较两个数的大小
- 不用比较符判断两个数的大小 (移位)
- 不用判断语句比较两个数的大小值
- 08-14 比较两个数的大小,不用判断语句
- 不用运算符比较两个int数的大小
- Linux SSH远程文件/目录传输命令scp
- ble学习笔记十五----------ble协议栈之flash数据存储实验
- [视频讲解]Java(JDK的下载安装及第一个程序运行)
- 缓冲区的比较
- Apache下htaccess文件不起作用/rewrite 没有效果
- 不用if比较两个数大小
- 关于在cocos2d中展示文字
- Unity3D 使用XML进行简单的配置文件修改
- Rotate Image、Pascal's Triangle vector用法
- Unity3D传递ProtoBuf-net消息测试
- Dom获取元素的几种方式
- 循环队列 链式队列 的jJAVA实现
- 学习swift资源汇总
- 利用原生JavaScript获取样式的方式小结