取多项式的导数(无效版本)

时间:2013-03-19 04:41:05

标签: java linked-list

我需要编写一个通过修改当前多项式来导出的方法。我可以写一个与返回类型一起工作的。这是代码:

public PolynomialSortedList differentiate() {

    PolynomialSortedList res = new PolynomialSortedList();

       for(PolyNode tmp = poly; tmp != null; tmp = tmp.next)
        {
           if(tmp.exp != 0)
              res.addTerm(tmp.coef * tmp.exp, tmp.exp - 1 );

        }
       return res;
}

如何使用代码的上半部分将其变为无效:

public class PolynomialSortedList implements Polynomial {
    private PolyNode poly;
    private double TOLERANCE = 0.00000001;

    public PolynomialSortedList() { 
        poly = null;
     }

    private static class PolyNode {
        int coef;
        int exp;
        PolyNode next;

        PolyNode(int coef, int exp,PolyNode next) {
            this.coef = coef;
            this.exp  = exp;
            this.next = next;
        }
    }
}

1 个答案:

答案 0 :(得分:1)

假设您通过说myPolyList.differentiate();来调用区分,那么您可以尝试使用return res;交换this.poly = res.poly;。唯一的问题就是现在,由于polyprivate而且你无法从polyList获取第一个多边形,因此不会有效。

编辑:关于如何设置程序的更多信息将帮助我提供更具体的答案。