1、设一棵树t中边的集合为,要求用孩子兄弟表示法(二叉链表)表示出该树的存储结构并将该树转化成对应的二叉树。
2、设一组有序的记录关键字序列为(13,18,24,35,47,50,62,83,90),查找方法用二分查找,要求计算出查找关键字62时的比较次数并计算出查找成功时的平均查找长度。
3、我们可用“破圈法”求解带权连通无向图的一棵最小代价生成树。所谓“破圈法”就是“任取一圈,去掉圈上权最大的边”,反复执行这一步骤,直到没有圈为止。请给出用“破圈法”求解给定的带权连通无向图的一棵最小代价生成树的详细算法,并用程序实现你所给出的算法。
注:圈就是回路。
4、设有两个集合a和集合b,要求设计生成集合c=a∩b的算法,其中集合a、b和c用链式存储结构表示。
typedef struct node lklist;
void intersection(lklist *ha,lklist *hb,lklist *&hc)
lklist *p,*q,*t;
for(p=ha,hc=0;p!=0;p=p->next)
for(q=hb;q!=0;q=q->next) if (q->data==p->data) break;
if(q!=0)
5、(1)p->rchild (2)p->lchild (3)p->lchild (4)addq(q,p->lchild) (5)addq(q,p->rchild)
25. (1)t->rchild!=null (2)t->rchild!=null (3)n0++ 4)count(t->lchild) (5)count(t->rchild)
26. .1)top2) stack[top]=p->rchild (3)top++ 4)stack[top]=p->lchild
27. (1)*ppos //根结点 (2)rpos=ipos (3)rpos–ipos (4)ipos (5)ppos+1
6、设t是给定的一棵二叉树,下面的递归程序count(t)用于求得:二叉树t中具有非空的左,右两个儿子的结点个数n2;只有非空左儿子的个数nl;只有非空右儿子的结点个数nr和叶子结点个数n0。n2、nl、nr、n0都是全局量,且在调用count(t)之前都置为0.
typedef struct node
int data; struct node *lchild,*rchild;}node;
int n2,nl,nr,n0;
void count(node *t)
7、证明由二叉树的中序序列和后序序列,也可以唯一确定一棵二叉树。
当n=1时,只有一个根结点,由中序序列和后序序列可以确定这棵二叉树。
设当n=m-1时结论成立,现证明当n=m时结论成立。
设中序序列为s1,s2,…,sm,后序序列是p1,p2,…,pm。因后序序列最后一个元素pm是根,则在中序序列中可找到与pm相等的结点(设二叉树中各结点互不相同)si(1≤i≤m),因中序序列是由中序遍历而得,所以si是根结点,s1,s2,…,si-1是左子树的中序序列,而si+1,si+2,…,sm是右子树的中序序列。
若i=1,则s1是根,这时二叉树的左子树为空,右子树的结点数是m-1,则和可以唯一确定右子树,从而也确定了二叉树。
若i=m,则sm是根,这时二叉树的右子树为空,左子树的结点数是m-1,则和唯一确定左子树,从而也确定了二叉树。
最后,当1可唯一确定二叉树的左子树,由和。
pi,pi+1,…,pm-1}可唯一确定二叉树的右子树 。
8、设有一个数组中存放了一个无序的关键序列k1、k2、…、kn。现要求将kn放在将元素排序后的正确位置上,试编写实现该功能的算法,要求比较关键字的次数不超过n。
51. 借助于快速排序的算法思想,在一组无序的记录中查找给定关键字值等于key的记录。设此组记录存放于数组r[l..
h]中。若查找成功,则输出该记录在r数组中的位置及其值,否则显示“not find”信息。请编写出算法并简要说明算法思想。
2023年吉林省数据统计加强
1 设有一组初始记录关键字为 45,80,48,40,22,78 要求构造一棵二叉排序树并给出构造过程。void linklist reverse linklist l 链表的就地逆置 为简化算法,假设表长大于2 p l next q p next s q next p next null whil...
2019吉林省数据结构 C考
1 已知广义表l x,y,z a,u,t,w 从l 表中取出原子项t 的操作是 d a head head tail tail l b tail head head tail l c head tail head tail l d head tail head tail tail l 2 与无向图相...
2023年吉林省专升本
我所经历的2012年专升本,北华市场营销专业。对于专升本,也许很多人会说难或者是一些话,我想告诉你们的是专升本一点也不难,前提是只要你好好学那2本专业课,和英语过 的。我永远相信一句话就是,付出一定会有回报。我的经历如下 我是12月份报考的专升本,几乎都是那个时候报,作为专科的我们,正处于高不成低不...