微软等数据结构+算法面试100题(26)--数值的整数次方
2012-11-11 16:04
423 查看
/* 71.数值的整数次方。 题目:实现函数double Power(double base, int exponent),求base 的exponent 次方。 */ /* 例如要计算2^5;n是次方数,res是返回值。tmp中间变量 n res tmp 6 1 2 3 1 2^2 1 2^2 2^4 0 2^6 整个计算过程就是n次方每次都向右移一位。说明现在是tmp^n。如果n是奇数的话。那么肯定要使res*=tmp;这样就变成了 tmp^n-1。而n-1是偶数。 */ double Power(double base, int exponent) { double res=1,tmp=base; while(exponent) { if((exponent&1)==1) res*=tmp; tmp=tmp*tmp; exponent=exponent>>1; } return res; } void PowerTest() { while(1) { double base=0.0; cout<<"base : "; cin>>base; int exponent=0; cout<<"exponent : "; cin>>exponent; cout<<"base^exponent : "<<Power(base,exponent)<<endl; cout<<"base^exponent : "<<std::pow(base,exponent)<<endl; } }
相关文章推荐
- 数值的整数次方 【微软面试100题 第七十一题】
- 数值的整数次方 【微软面试100题 第七十一题】
- 微软等数据结构+算法面试100题(5)--怎样编写一个程序,把一个有序整数数组放到二叉树中
- 微软等数据结构+算法面试100题(6)--写一个函数,检查字符是否是整数,如果是,返回其整数值
- 微软等数据结构+算法面试100题 by July
- 微软等数据结构+算法面试100题全部答案集锦
- 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题
- 《微软等数据结构+算法面试100题》自娱自解(完结)ZHUAN
- 微软等数据结构+算法面试100题(9)--在一个int 数组里查找这样的数,它大于等于左侧所有数,小于等于右侧所有数。
- 微软等数据结构+算法面试100题(30)--只出现一次的数字
- 微软等数据结构+算法面试100题[最新第61-80题]
- 微软等数据结构+算法面试100题(41)-- 二叉树的前序遍历
- 珍藏版、微软等数据结构+算法面试100题全部出炉
- 评微软等公司数据结构和算法面试100题
- 微软等数据结构+算法面试100题全部答案集锦 复制过来比较乱
- 珍藏版、微软等数据结构+算法面试100题全部出炉
- [答案V0.1版]精选微软等数据结构+算法面试100题 [前20题]
- 微软等数据结构+算法面试100题(10)--三道面试题
- 微软等数据结构+算法面试100题(31)--在O(1)时间内删除链表结点
- 微软等数据结构+算法面试100题(42)-- 设计一个栈结构