数据结构课程设计

发布 2022-10-01 20:38:28 阅读 6810

《数据结构与算法》

课程设计。目录。

第一部分:课程设计题目要求。

第二部分:设计内容及结果展示。

第三部分:设计体会。

计算机科学系2023年《数据结构与算法》课程设计题目。

1.用单链表构造并实现多项式加、减法程序;并完成下列算式:

f1(x) =5x4+3x3-2x2+7x+1

f2(x) =5x3-10x2+2x-20

2.实现二叉树深度优先周游非递归前序和中序算法,并且自我构造一颗二叉树进行验证。

3.实现图的邻接表表示程序,在此基础上,实现图的深度(dfs)和广度优先算法(bfs),并且用一个实例进行验证。

4.编制一个演示内部排序算法比较的程序。采用快速排序、希尔排序和堆排序进行比较对输入的数字序列进行排序。

a.输入:排序方法选择,由键盘或文件输入待排序表的表长。

b. 输出:在不同输入情况下和不同排序方法关键字参加的比较次数和关键字的移动次数,列表显示。

5.编写一个串类完成:两个字符串的连接、字符串的复制、字符串的比较 、求字符串长度、取子串、串的替换等六个基本函数。同时,以实例验证各个函数的功能。

设计内容及结果展示。

1.用单链表构造并实现多项式加、减法程序;并完成下列算式:

f1(x) =5x4+3x3-2x2+7x+1

f2(x) =5x3-10x2+2x-20

算法。void creatlist(list &l,int n)

list p;

l=new link;

l->next=null;

cout<<"please input "

void display (list l)

link* p=l->next;

while(p!=null)

void playadd(list a,list b)

list p,q,r,s;

int x;

p=a->next;q=b->next;

s=a;while((p!=null)&&q!=null))

else if(p->time>q->time)

elseelse

p=s->next;

r=q;q=q->next;

free(r);

if(q!=null)

s->next=q;

free(b);

运行结果:2.实现二叉树深度优先周游非递归前序和中序算法,并且自我构造一颗二叉树进行验证。

算法。void init()

memset(node,-1,sizeof(node));

memset(built,0,sizeof(built));

error=false;

void build_binary_tree(int n)

cout<<"请按层序依次输入每一个结点及其左儿子,右儿子的数据域的值。若该结点没有左儿子,右儿子,则相应地输入-1";

for(i=1;i<=n;++i)

elsefor(int k=1;k<=

elsearcnode *q;

q=while(q->nextarc&&(q->nextarc->adjvexq=q->nextarc;

p->nextarc=q->nextarc;

q->nextarc=p;

return ok;

bool visited[max];

void dfs(algraph&g,int v)

visited[v]=true;

数据结构课程设计

课程设计说明书 题目哈夫曼编码问题的设计和实现。课程名称数据结构课程设计。院 系 部 中心。专业。班级。学生姓名。学号。设计地点。指导教师。设计起止时间 2008 年6月 2日至 2008 年 6月 6 日。目录。1 问题描述 2 1.1 题目内容 2 1.2 基本要求 2 1.3 测试数据 2 2...

数据结构课程设计

数据结构 课程设计。实验报告。学院 信息工程学院。班级 姓名 学号 指导老师 题目2 一元多项式的计算。1 实验目的。1 掌握链表的灵活运用 2 学习链表初始化和建立一个新的链表 3 知道怎样去实现链表删除结点操作与插入结点 4 理解链表的基本操作 包括数据域数据的相加 并能灵活运用。2 实验内容。...

数据结构课程设计

班级 信计 1102 姓名 李娜娜。学号 1108060209 设计日期 2013.07.15 西安科技大学计算机学院 1.实验题目 编制一个演绎扫雷游戏的程序。2.问题描述。做一个n x m的扫雷游戏,每个方格包含两种状态 关闭 closed 和打开 opened 初始化时每个方格都是关闭的,一个...