Google 2013笔试题一
来源:互联网 发布:白金数据 magnet 编辑:程序博客网 时间:2024/06/07 18:41
2.1 给定三个整数a,b,c,实现 int median(int a, int b, int c),返回三个数的中位数,不可使用sort,要求整数操作(比较,位运算,加减乘除等)次数尽量少,并分析说明程序最坏和平均情况下使用的操作次数。
分析:中位数的意思是一个有序列中间的一个(奇数个数情况)或者中间两个的平均值(偶数个数情况)
int median(int a,int b,int c){if(a>=b){return (b>=c)?b:((a>c)?c:a);}else{return (b<c)?b:((a>c)?a:c);}}void main(){int result = 0;result = median(6,1,6);cout<<result;}
最好的情况就是两次比较就找到,如a>b,b>c则得到b,操作次数为2;
最坏的情况是由于只有三个数,最多比较三次就可以了,操作次数为3;
不知道是不是这么理解,有不同意见欢迎指正!
阅读全文
0 0
- Google 2013笔试题一
- 2012年Google校园招聘笔试最后一题
- 2013 google校园招聘笔试题
- Google 2013校园招聘笔试题
- google 2013 校园招聘笔试题
- 2013 google校园招聘笔试题 (北京)
- 趣题11:2013 google笔试题
- 2013 google校园招聘笔试题
- 2013--google笔试
- google intern笔试题
- 2007 google 笔试题
- google笔试题一道
- Google 笔试题
- Google 笔试题。
- Google笔试题
- google笔试题_2011
- Google笔试题
- Google笔试题
- java语言基础-引出方法-方法定义-基本调用操作
- PWM控制电机
- 玩转break,return ,continue的使用和关系
- 走入javascript(三)事件函数的初步认识
- HDU 欧拉回路
- Google 2013笔试题一
- 安卓开发球面波干涉现象仿真app
- storm-学习收藏
- 算法细节系列(32):有趣的数学
- Java中的Dueue和Deque
- codeforces 814 A An abandoned sentiment from past
- vue.js组件化开发实践
- 面向对象设计基本原则(举例说明)
- Angular1中的超时处理