码迷,mamicode.com
首页 > 其他好文 > 详细

线性表及其实现(1)

时间:2017-09-05 01:41:56      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:str   idt   class   线性   node   技术分享   es2017   相减   struct   

线性表及其实现(1)

  多项式的表示:

  【例】一元多项式及其运算

  一元多项式:技术分享

  主要运算:多项式相加、相减、相乘等

  【分析】如何表示多项式?

  ? 多项式项数n

  ? 各项系数ai 及指数 i

方法一:顺序存储结构直接表示

  数组各分量对应多项式各项:

  a[i]: 项xi的系数ai

技术分享

 

两个多项式相加:两个数组对应的分量相加

弊端:当表示x+2x2000 时将会浪费大量的存储空间,且效率低下。

方法二:顺序存储结构表示非零项

  每个非零项 aix涉及两个信息:系数 a和指数 

  可以将一个多项式看成是一个(ai,i) 二元组的集合。

  用结构数组表示:数组分量是由系数ai、指数i组成的结构,对应一个非零项

   技术分享

 

  相加过程:从头开始,比较两个多项式当前对应项的指数

  P1: (9,12),(15,8), (3,2)

  P2: (26,19),(-4,8),(-13,6),(82,0)

   P3: (26,19),(9,12),(11,8) ,(-13,6) ,(3,2), (82,0)

方法三:链表结构存储非零项

  链表中每个结点存储多项式中的一个非零项,

  包括系数和指数两个数据域以及一个指针域。

技术分享

1 typedef struct PolyNode *Polynomial;
2 typedef struct PolyNode {
3             int coef;
4             int expon;
5             Polynomial link;
6 }
7                     

技术分享

 

 

未完待续~~~...

下一节:什么是线性表?

                                                                                   -----yuhaow

 

线性表及其实现(1)

标签:str   idt   class   线性   node   技术分享   es2017   相减   struct   

原文地址:http://www.cnblogs.com/Sunrises/p/7476536.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!