没有合适的资源?快使用搜索试试~ 我知道了~
首页数据结构课程设计 计算一元稀疏多项式
资源详情
资源评论
资源推荐

课程设计任务书
xxx 专业 xxx 年级 xxx
班 xxx 学号 xxx
目 录
一、设计题目…………………………………………………………………2
二、主要内容…………………………………………………………………2
三、具体要求…………………………………………………………………2
四、进度安排…………………………………………………………………2
(一)总体设计………………………………………………………………2
(1)仔细阅读系统要求,首先将此系统化主要分为如下模块/功能…2
(2)基本思想……………………………………………………………3
(3)系统主模块结构图…………………………………………………3
(4)主要函数流程图图解………………………………………………4
(二)根据流程图编写程序代码并调试……………………………………
…………………………………………………………………………………6
(三)源代码…………………………………………………………………
…………………………………………………………………………………10
五、课程设计的总结报告 …………………………………………………19
(一)课程设计遇到的问题及解决…………………………………………
…………………………………………………………………………………19
(二)得意之处………………………………………………………………
…………………………………………………………………………………19
(三)设计中存在的不足及改进的设想……………………………………
…………………………………………………………………………………20
(四)本次课程设计的感想和心得体会……………………………………20
1

课程设计任务书
xxx 专业 xxx 年级 xxx
班 xxx
一.设计题目
计算一元稀疏多项式
二.主要内容
一个 n 次多项式可以用下述形式表示:
f(x)=a
n
x
n
+a
n-1
x
n-1
+……+a
1
x+a
0
(a
n
≠0 )
当多项式的项数不多时,称之为稀疏多项式,选择合适的数据结构实现一元稀
疏多项式相关运算。
三.具体要求
要求完成如下功能:
(1) 输入并建立多项式——creatpolyn()
(2) 输出多项式,输出形式为整数序列,序列按指数降序排列——printpolyn()
(3) 多项式 a 和 b 相加,建立多项式 a+b,输出相加的多项式——addpolyn()
(4) 多项式 a 和 b 相减,建立多项式 a-b,输出相减的多项式——subpolyn()
用带表头结点的单链表存储多项式。
测试数据:
(1)(2x+5x
8
-3.1x
11
)+(7-5x
8
+11x
9
)
(2) (6-3x+4.4x
2
-1.2x9)-(-6-3x+5.4x
2
+7.8x
15
)
(3)(x+x
2
+x
3
)+0
(4)(x+x
3
)-(-x-x
-3
)
四.进度安排
(一)总体设计
2

(1)仔细阅读系统要求,首先将此系统化主要分为如下模块/功能
1.输入并建立多项式——creatpolyn()
2 . 输出多项 式, 输 出 形 式 为整 数 序 列,序 列 按 指 数降 序 排 列 — —
printpolyn()
3.多项式 a 和 b 相加,建立多项式 a+b,输出相加的多项式——addpolyn()
4.多项式 a 和 b 相减,建立多项式 a-b,输出相减的多项式——subpolyn()
还包括以下为辅助函数
5.查找在链表中插入的位置 ——Insert()
6.删除多项式 ——destroypolyn()
7.比较两个项式的指数大小,以便降序排列——compare()
(2)基本思想
要解决多项式相加(多项式相减可以引用多项式相加同样的方法),必须
要有多项式,所以必须首先建立两个多项式,采用带表头结点的单链表存储多
项式,将结点结构体定义为
系数 xishu 指数 zhishu 指针域 next
运用尾插法建立两条单链表,以单链表 polyn m 和 polyn n 分别表示两个
一元多项式 a 和 b,a+b 的求和运算等同于单链表的插入问题(将单链表
polyn m 中的结点插入到单链表 polyn n 中),因此“和多项式”中的结点无须
另生成。
方便起见,设 a、b 分别指向单链表 polya 和 polyb 的当前项,比较 a、b 结点
的指数项,由此得到下列运算规则:
① 若 a->zhishu<b->zhishu,则结点 a 所指的结点应是“和多项式”中的
一项,令指针 b 后移。
② 若 a->zhishu=b->zhishu,则将两个结点中的系数相加,当和不为 0
时修改结点 a 的系数。
③ 若 a->zhishu>b->zhishu,则结点 b 所指的结点应是“和多项式”中的
一项,将结点 b 插入在结点 a 之前,且令指针 b 在原来的链表上后移。
3

(3)系统主模块结构图:
(4)主要函数流程图图解:
1:输入并建立多项式
功能:将要进行的运算的多项式的建立
数据输入:要输入的多项式的系数与指数
建立链表:通过 insert 函数插入结点
流程图如下: 图 1 输入并建立多项式
4
剩余19页未读,继续阅读









安全验证
文档复制为VIP权益,开通VIP直接复制

评论3