姓名学号___
_ 年__ 月__ 日。
明确说明程序的开发环境和功能要求。针对主要功能,给出如下说明:
1) 输入参数的格式和合法取值范围。
格式:int的整型数据。合法取值范围:-2474836~247483647
2) 输出的格式。
输出的格式:%3d
3) 测试数据。
测试数据:3,5,8,11 2,6,8,9,11,15,20
1) 确定存储结构,并给出所用数据类型的数据结构定义。
该程序采用单链表的存储结构,其数据结构定义如下:
typedef struct node结点类型定义*/
elemtype data;
struct node* next;
}node,*linklistlinklist为结构指针类型*/
2) 给出所用数据类型中每个操作的伪码算法。
所用数据类型中每个操作的伪码算法如下:
1) 初始化单链表。
initlist(linklist *l)
*l=(linklist)malloc(sizeof(node));建立头结点*/
(*l)->next=null建立空的单链表l*/
2) 创建单链表。
void createfromhead(linklist ll是带头结点的空链表指针,通过键盘输入表中元素值,利用头指针建单链表l*/
node *s;
char c;
int flag=1;
while(flagflag初值为1,当输入"$"时,置flag为0,建表结束*/
else flag=0;
3) 归并并输出单链表。
void and(linklist &la,linklist &lb,linklist &lc) /将la,lb,lc置空。pa和pb分别指向两个单链表la和lb的第一个结点*/
linklist pa,pb,pc;
pa=la->next;
pb=lb->next;
lc=pc=la;
while(pa&&pb)
if(pa->data<=pb->data)
else
while(pa)
while(pb)
free(lb);
1) 调试过程中主要遇到哪些问题?是如何解决的?
归并时,如何插入指针,不能确定。通过看书,向同学询问,用while if语句判断得以实现。
2) 经验和体会。
单链表建立有多种方法实现,既可以用头插法也可以用尾插法,本次通过书本中运用的方法实现这次操作,在其中学习了很多,对单链表有了更深的了解。
采用测试数据,列出实际的输入、输出结果。
带详细注释的源程序。
见***詹奇。cpp
数据结构与算法分析
课程内容体系主要内容。教学单元模块。具体教学内容。绪论。绪论部分是全书的预备知识,主要对adl语言 数据结构与算法 算法分析基础 oop 和c 做了简单介绍。基本数据结构。基本数据结构部分包括线性表 堆栈与队列 数组 课程内容体系主要内容。数据结构与算法分析 课程实践内容体系主要内容。课程实验参考教...
数据结构与算法分析总结
在算法设计中,顺序表主要用于检索,而利用栈中的递归思想在算法中则应用非常广泛,如递归排序,分治算法等。树结构 是一种非常重要的非线性数据结构,它是由一个根结点和若干叶结点组成的树状结构,除了根结点每个结点只能有一个父节点,可以有若干子结点,若干个树结构还可以构成森林,树的存储结构也分为顺序存储和链式...
数据结构与算法分析实验
教材 电子信息技术专业实验指导书的第2章 数据结构实验。本实验课学分 0.5 上课周次 10周 17周 各个班不同,13 成绩评定 随课实验,成绩不单独给,但会体现在数据结构与算法分析课程的成绩中,课程总3.5学分,理论课程3学分,实验0.教材 电子信息技术专业实验指导书的第2章 数据结构实验。本实...