pgm07_32.txt

来自「Data Structures And Algorithms With Obje」· 文本 代码 · 共 51 行

TXT
51
字号
## This file contains the Python code from Program 7.32 of# "Data Structures and Algorithms# with Object-Oriented Design Patterns in Python"# by Bruno R. Preiss.## Copyright (c) 2003 by Bruno R. Preiss, P.Eng.  All rights reserved.## http://www.brpreiss.com/books/opus7/programs/pgm07_32.txt#class PolynomialAsSortedList(Polynomial):    def __init__(self):        super(PolynomialAsSortedList, self).__init__()        self._list = SortedListAsLinkedList()    def nextTerm(self, iter):        try:            return iter.next()        except StopIteration:            return None    def __add__(self, poly):        result = PolynomialAsSortedList()        p1 = iter(self._list)        p2 = iter(poly._list)        term1 = self.nextTerm(p1)        term2 = self.nextTerm(p2);        while term1 is not None and term2 is not None:            if term1.exponent < term2.exponent:                result.addTerm(copy(term1))                term1 = self.nextTerm(p1)            elif term1.exponent > term2.exponent:                result.addTerm(copy(term2))                term2 = self.nextTerm(p2)            else:                sum = term1 + term2                if sum.coefficient != 0:                    result.addTerm(sum)                term1 = self.nextTerm(p1)                term2 = self.nextTerm(p2)        while term1 is not None:            result.addTerm(copy(term1))            term1 = self.nextTerm(p1)        while term2 is not None:            result.addTerm(copy(term2))            term2 = self.nextTerm(p2)        return result    # ...

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?