Добавление полинома Java с использованием связанного списка
Я пытаюсь добавить два полинома, используя связанные списки, но мой результат всегда равен 0.0, и я не уверен, почему. Любые идеи, где я пошел не так, или если я даже выбрал правильный подход?
-poly - указатель на начало связанного списка, в котором хранится многочлен, инициализированный нулевым значением в другом разделе кода
public Polynomial add(Polynomial p) {
Polynomial a = this;
Polynomial sum = new Polynomial();
sum.poly = new Node (0,0,null);
Node c = a.poly;
Node d = p.poly;
while(c!=null || d!=null ){ //either list still has entries
if(c == null){
sum.poly.term = d.term;
d=d.next;
} else if(d == null){
sum.poly.term = new Term(c.term.coeff, c.term.degree);
c=c.next;
} else if(c.term.degree > d.term.degree){
sum.poly.term = c.term;
c=c.next;
} else if(d.term.degree > c.term.degree){
sum.poly.term = d.term;
d=d.next;
}
else{ // degrees are the same so we add
float temp = d.term.coeff + c.term.coeff;
c=c.next;
d=d.next;
if(temp ==0){
continue; // do not store
}
sum.poly.term = new Term (temp, c.term.degree);
}
sum.poly.next = new Node(0,0,null);
sum.poly = sum.poly.next;
}
return sum;
}