gpt4 book ai didi

java - 关于多项式乘法的问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:51:11 26 4
gpt4 key购买 nike

我知道多项式乘法的 horners 方法更快,但我不知道这里发生了什么是代码

public class horner{

public static final int n=10;
public static final int x=7;

public static void main(String[] args){
//non fast version
int a[]=new int[]{1,2,3,4,5,6,7,8,9,10};
int xi=1;
int y=a[0];
for (int i=1;i<n;i++){
xi=x*xi;
y=y+a[i]*xi;
}
System.out.println(y);
//fast method
int y1=a[n-1];
for (int i=n-2;i>=0;i--){
y1=x*y+a[i];
}

System.out.println(y1);
}
}

这两种方法的结果是不一样的第一种方法的结果是

462945547

第二种方法的结果是

-1054348465

请帮忙

最佳答案

您在第二个循环中使用 y:

y1=x*y+a[i];

这就是写两个函数会派上用场的地方——不可能重用同一个变量。

关于java - 关于多项式乘法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2891276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com