桂林电子科技大学数据结构实验考试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
桂林电子科技大学试卷
2012-2013学年第2 学期课号
课程名称数据结构实验(A卷、开卷)适用班级(或年级、专业)-
1.以自己的学号序列的数字组成为二叉树的结点,建立二叉查找树.
(1)根据以下程序,按照正确输入该二叉树,并输出其中序遍历序列.(20’)
(2)对该程序做适当修改,使输出序列为各结点数字的降序排列.(30’)
例:学号1100730128,去掉重复元素为107328,按此顺序建立二叉查找树如下图
按照以下程序建立该二叉树,并输出其中序遍历序列.
简述分析过程,并将程序运行结果贴在以下空白处.修改过的程序用红色字体标出。
#define Null 0
typedef struct node
{ int data;
struct node *lchild,*rchild;
} bitree;
bitree *creat()
{ bitree *t;
int x;
scanf("%d",&x);
if(x==100) t=Null; else{
t=malloc(sizeof(bitree)); t->data=x;
t->lchild=creat();
t->rchild=creat();
}
return t;
}
void inorder(bitree *t)
{if(t!=Null)
{inorder(t->lchild);
printf("%4d",t->data);
inorder(t->rchild);
}
}
main()
{bitree *root;
printf("\n");
root=creat();
inorder(root);
printf("\n");
}
2.用向量做存储结构,设计一个算法,仅用一个辅助结点,实现将线性表中的结点循环右移K
位的运算.(50’)
测试用例: 1, 2, 3, 4, 5, 6 ,7 ,8 ,9 ,10, K=6
编写C程序实现上述算法,将程序源码及运行结果贴到以下空白处.