这期内容当中小编将会给大家带来有关Python中怎么实现一元多项式的相加相乘运算,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
class ListNode:
def init(self, x, y):
self.c = x
self.e = y
self.next = None
class Solution:
def ReadandLink(self,N):
self.N=N a0=ListNode(0,0) a0.next=None c0=a0 for i in range(1,N+1): c=int(input("系数:")) e=int(input("指数:")) b0=ListNode(c,e) a0.next=b0 a0=b0 return c0
def add(head1,head2):
node1=head1.next node2=head2.next add0=ListNode(0,0) add0.next=None head3=add0 while(node1!=None and node2!=None): if(node1.e==node2.e ): add1=ListNode(node1.c+node2.c,node1.e) add0.next=add1 add0=add1 node1=node1.next node2=node2.next elif(node1.e>node2.e ): add1=ListNode(node1.c,node1.e) add0.next=add1 add0=add1 if(node1.next!=None): node1=node1.next else: node1=node1.next break elif(node1.e<node2.e): add1=ListNode(node2.c,node2.e) add0.next=add1 add0=add1 if(node2.next!=None): node2=node2.next else: node2=node2.next break while(node1==None and node2!=None): add1=ListNode(node2.c,node2.e) add0.next=add1 add0=add1 if(node2.next!=None): node2=node2.next else: break while(node2==None and node1!=None): add1=ListNode(node1.c,node1.e) add0.next=add1 add0=add1 if(node1.next!=None): node1=node1.next else: break return head3
def multi(head1,head2):
multi_node1=head1.next
multi_node2=head2.next
add_two=ListNode(0,0)
add_two.next=None
while( multi_node1!=None):
multi0=ListNode(0,0)
multi0.next=None
head4=multi0
while(multi_node2!=None): multi_c=multi_node1.c*multi_node2.c multi_e=multi_node1.e+multi_node2.e multi1=ListNode(multi_c,multi_e) multi0.next=multi1 multi0 = multi1 multi_node2=multi_node2.next multi_node2=head2.next multi_node1=multi_node1.next add_two=add(add_two,head4)
return add_two
t1=Solution()
t2=Solution()
N1=int(input("多项式的项数:"))
head1=t1.ReadandLink(N1)
N2=int(input("多项式的项数:"))
head2=t2.ReadandLink(N2)
head3=add(head1,head2)
first=head3.next
print("加和结果")
while(first!=None):
print("系数=%d 指数等于%d"%(first.c,first.e))
first=first.next
head4=multi(head1,head2)
second=head4.next
print("乘积结果")
while(second!=None):
print("系数=%d 指数等于%d"%(second.c,second.e)) second=second.next
上述就是小编为大家分享的Python中怎么实现一元多项式的相加相乘运算了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。