大体的思路就是在加减的时候开一个新的数组,然后新的数组是以指数的大小来排列的,将得到数存到新数组对应指数的位置上(当然数组是二维的)
不过要注意:在乘的时候是指数相加不是指数相乘
啊啊啊啊,我一定是傻了。
package polynomial1;
import java.util.Scanner;
public class polynomialarray {
public static int arrlength2,arrlength3;
public int FindBigCoeff(int [ ][ ] a)
{
int max=a[0][1];
for(int i=1;i<a.length;i++)
{
if (a[i][1]>max) max=a[i][1];
}
return max;
}
public void Add(int [][]a,int [][]b,int arrlength1)
{
polynomialarray poly=new polynomialarray();
int n=Math.max(poly.FindBigCoeff(a),poly.FindBigCoeff(b));
arrlength1=n+1;
int [][] c1=new int[arrlength1][2] ;
for(int i=0;i<arrlength1;i++)
{
c1[i][1]=i;
c1[i][0]=0;
}
for(int i=0;i<a.length;i++)
c1[a[i][1]][0]=c1[a[i][1]][0]+a[i][0];
for(int i=0;i<b.length;i++)
c1[b[i][1]][0]=c1[b[i][1]][0]+b[i][0];
poly.ArrPrint(c1);
}
public void ArrPrint(int [][]a)
{
int t=0;
while(a[t][0]==0)
t++;
if(a[t][0]!=0)
{
if((a[t][0]==1)&&(a[t][1]==1))System.out.print("x");
if((a[t][0]==1)&&am