导航菜单
首页 >  江南大学设计考研真题  > 江南大学2024年851真题分享

江南大学2024年851真题分享

第一题

1.描述一下线性结构的特点(4分)

2.下方是一个带头结点的线性链表head,设计算法删除5的整数倍数据(10分,每空2分)

typedef int datatype;typedef struct node{datatype data;struct node ___(1)___;}linklist;​void deleteOdd(linklist *head){Linklist *p,*temp;___(2)___;while(p→next){if(___(3)___){temp = p→next;___(4)___;free(temp);}else{___(5)___;}}} 第二题

有一个二叉树,先序遍历为ABDFCEGH,中序遍历为BFDAGEHC。

1.写出该二叉树后序遍历并画出树(5分);

2.将二叉树转化为森林(4分);

3.中序线索二叉树采用加线索的二叉链表存储

typedef struct node{datatype data;//数据域int ltag,rtag;//标记域struct node *lchild,*rchild;}bithptr;

设计在中序线索二叉树中寻找指针t所指节点(该节点有右子树)的后继节点(6分,每空3分)

bithptr *INORDERNEXT(bithptr *t){bithptr *p;_________;while(p->ltag == 0)_________;return(p);} 第三题

已知6个顶点(顶点为a、b、c、d、e、f)的有向带权图G,其邻接矩阵为三角矩阵,按行为主序(行优先)保存在一纬数组中:{4,6,∞,∞,∞,5,∞,∞,∞,4,3,∞,∞,3,3}

1.写出图G的邻接矩阵;(5分)

2.写出图G的邻接表(出边表);(5分)

3.画出有向带权图G;(5)

第四题

将一无序数据序列建成一个大根堆或小根堆,是堆排序首要问题。

1.判断下面的两个数据序列是否为大根堆,如果不是大根堆,请按建立大根堆的数据交换规则把它调成大根堆。(只要写出调整后的堆序列)(6分)

(la)100,90,80,60,85,75,20,25,10,70,65,50;

(lb)100,70,50,20,90,75,60,25,10,85,65,80;

2.设计算法,判断一个有n个数据的数据序列(下标从0开始)是否构成一个大根堆。如果是大根堆返回1,否则返回0。(9分)

int ISMAXHEAP(int R[],int n){   int i;   for(i=0;i

相关推荐: