论坛首页 招聘求职论坛

看看这道题,有点弱大家谅解

浏览 16643 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (3)
作者 正文
   发表时间:2010-01-19  
对给定问题进行细致分析,从而找出一种比较优化的算法:写一个函数计算当参数为n(n很大)是的值1-2+3-4+5-6+7……..+n
   发表时间:2010-01-19  
出这道题的人 是 小学教师,而且是古典的
0 请登录后投票
   发表时间:2010-01-19  
jordan421 写道
对给定问题进行细致分析,从而找出一种比较优化的算法:写一个函数计算当参数为n(n很大)是的值1-2+3-4+5-6+7……..+n

真是乔丹啊,胸大无脑
0 请登录后投票
   发表时间:2010-01-19  
public void numT(int n){
int num =0;
if(n%2==0){
num =-(n/2);
System.out.println(num);
}else{
num=n-(n/2);
System.out.println(num);
}
}

这么写对么?
0 请登录后投票
   发表时间:2010-01-19  
//n很大不考虑n=1的情况
if(n%2==0)
return -1*n/2;
else
return n-1;
题目还想对取模算法进行优化吗?不太现实吧
0 请登录后投票
   发表时间:2010-01-19  
fangin 写道
//n很大不考虑n=1的情况
if(n%2==0)
return -1*n/2;
else
return n-1;
题目还想对取模算法进行优化吗?不太现实吧

基数情况应该,n-n/2吧??
0 请登录后投票
   发表时间:2010-01-19  
应该直接判断n是奇数还是偶数,n=奇数时,和=1/2(n+1),n=偶数时,和=-n/2,这样应该是最简便的算法,其实,靠的就是数学
0 请登录后投票
   发表时间:2010-01-19  
偶数减,基数加
0 请登录后投票
   发表时间:2010-01-19  
无聊题目、
0 请登录后投票
   发表时间:2010-01-19  
抱歉,除了(n为奇数结果是1/2(n+1),n为偶数结果是=-n/2),我想不出什么优化算法来
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics