Добавление полинома 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;
}

0 ответов

Другие вопросы по тегам