📄 pgm07_32.txt
字号:
## 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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -