求1-2+3-4+5-6+....+n(n取很大)
来源:互联网 发布:域名备案主机不用了 编辑:程序博客网 时间:2024/04/29 15:39
很简单的一道题,但如何能够解出高效的算法呢?
给出代码:
初看它,我也扪心自问,这么简单的算法我不会写吗,但我根本不会考虑到要这样写。
不要认为CPU运算速度快 就 把所有的问题都推给它去做,程序员应该将代码优化再优化,我们自己能做的决不要让CPU做 ,因为CPU是为用户服务的,不是为我们程序员服务的.
确实,算法很重要.
给出代码:
long fn(long n)
{
if(n<=0)
{
printf("error: n must > 0);
exit(1);
}
if(0==n%2)
return (n/2)*(-1);
else
return (n/2)*(-1)+n;
}
{
if(n<=0)
{
printf("error: n must > 0);
exit(1);
}
if(0==n%2)
return (n/2)*(-1);
else
return (n/2)*(-1)+n;
}
初看它,我也扪心自问,这么简单的算法我不会写吗,但我根本不会考虑到要这样写。
不要认为CPU运算速度快 就 把所有的问题都推给它去做,程序员应该将代码优化再优化,我们自己能做的决不要让CPU做 ,因为CPU是为用户服务的,不是为我们程序员服务的.
确实,算法很重要.
- 求1-2+3-4+5-6+....+n(n取很大)
- 求n!,n很大
- 当n很大时计算1-2+3-4+5-6+7...+n
- 求n很大时求,<= n的素数的个数(时间复杂度o(n ^ 2 / 3)模板
- 第三十一讲项目3.2-求s=1+2^2+3^3+4^4+5^5+6^6,要求n^n不能用求幂的运算直接计算(n^n表示n的n次方)
- C++语言笔试题目写一个函数计算当参数为n(n很大)时的值 1-2+3-4+5-6+7......+n&字符指针、浮点数指针、以及函数指针占用的内存等
- 1、求n!;2、求1!+2!+3!+......+n!之和
- 求1+2+3+4+++++++n
- 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。
- 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。
- 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。
- 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字(n不超过20)。
- 求1+2+3+....n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+。。。+N
- 微型项目实践(7):数据访问的定义
- 关于vbscript的小应用
- asp.net目录权限设置图文综合
- ASP.NET的三层结构指什么?
- 走进与离开
- 求1-2+3-4+5-6+....+n(n取很大)
- VB.NET 应用:sum=1+1/2+2/3+3/5+5/8+...
- 嘿嘿,有空就来这里写文章咯
- 传递引用给自定义组件
- 如何从源码安装软件,写的不错
- Div+Css登陆窗体实现
- 关于word不能存档解决办法
- Exchange Server 2007边缘服务器应用
- 关于check