数据结构笔记-多项式加法运算

本文探讨了多项式在计算机中的两种数据结构表示方法:数组存储非零项和数组存储所有项,分别举例说明了如何将多项式转换为数组形式。以多项式A(x)=3x^4+7x^3+6x^2+2和B(x)=x^4+5x^3+2x^2+9为例,详细阐述了如何进行加法运算的过程。
摘要由CSDN通过智能技术生成

一个多项式如果使用数据结构存储在计算机中,有以下两种表示方法:

(1)使用n+2长度的一维数组来存放,数组的第一个位置存储最大指数n项的系数其他位置按照指数n递减,按序存储对应项数:P = (n,an,an-1,...,a1,a0)。例如P(x) = 2x^5+3x^4+5x^2+4x+1转换为数组A,A = [5,2,3,0,5,4,1]

(2)只存储多项式中的非0项,如果有m项非零项,就使用2m+1的数组来存储每一个非零项的指数和系数,数组的第一个元素则为此多项式非零项的个数。例如P(x) = 2x^5+3x^4+5x^2+4x+1转换为数组A,A = [5,2,5,3,4,5,2,4,1,1,0]

用第一种多项式表示法表示多项式A(x)=3x^4+7x^3+6x+2和B(x)=x^4+5x^3+2x^2+9并进行加法运算

#将两个最高次方相等的多项式相加后输出结果
ITEMS = 6
def Print_P(Poly,items):
    MaxExp = Poly[0]
    for i in range(1,items):
        MaxExp = MaxExp-1
        if Poly[i] != 0:
            if (MaxExp+1) != 0:
                print('%dx^%d'%(Poly[i],MaxExp+1),end='')
            else:
                print('%d'%Poly[i],end&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值