2023年浙江省数据概述基础

发布 2022-01-07 19:44:28 阅读 9163

1、已知有向图g=(v,e),其中v=,e=

写出g的拓扑排序的结果。

g拓扑排序的结果是:v1、v2、v4、v3、v5、v6、v7

2、设一棵树t中边的集合为,要求用孩子兄弟表示法(二叉链表)表示出该树的存储结构并将该树转化成对应的二叉树。

3、两棵空二叉树或仅有根结点的二叉树相似;对非空二叉树,可判左右子树是否相似,采用递归算法。

int similar(bitree p,q) /判断二叉树p和q是否相似。

if(p==null &&q==null) return (1);

else if(!p &&q ||p &&q) return (0);

else return(similar(p->lchild,q->lchild) &similar(p->rchild,q->rchild))

//结束similar

4、根据二叉排序树中序遍历所得结点值为增序的性质,在遍历中将当前遍历结点与其前驱结点值比较,即可得出结论,为此设全局指针变量pre(初值为null)和全局变量flag,初值为true。若非二叉排序树,则置flag为false。

#define true 1

#define false 0

typedef struct node

datatype data; struct node *llink,*rlink;} btree;

void judgebst(btree t,int flag)

/ 判断二叉树是否是二叉排序树,本算法结束后,在调用程序中由flag得出结论。

if(t!=null &&flag)

judgebst(t->llink,flag);/中序遍历左子树。

if(pre==null)pre=t;//中序遍历的第一个结点不必判断。

else if(pre->datadata)pre=t;//前驱指针指向当前结点。

else //不是完全二叉树

judgebst (t->rlink,flag);/中序遍历右子树。

//judgebst算法结束。

2019浙江省数据结构基础 必备

1 数据结构中,在逻辑上可以把数据结构分成 b a 动态结构和静态结构b 线性结构和非线性结构。c 紧凑结构和非紧凑结构d 内部结构和外部结构。2 若采用邻接矩阵法存储一个n个顶点的无向图,则该邻接矩阵是一个 d a 上三角矩阵b 稀疏矩阵c 对角矩阵d 对称矩阵。3 在一个单链表中,已知q结点是p...

2023年浙江省数据加强

1 设有一组初始记录关键字为 45,80,48,40,22,78 要求构造一棵二叉排序树并给出构造过程。2 本题要求建立有序的循环链表。从头到尾扫描数组a,取出a i 0 ilinkedlist creat elemtype a,int n 由含n个数据的数组a生成循环链表,要求链表有序并且无值重复...

2019浙江省数据结构 必备

1 设一数列的顺序为1,2,3,4,5,6,通过栈结构不可能排成的顺序数列为 b a 3,2,5,6,4,1 b 1,5,4,6,2,3c 2,4,3,5,1,6 d 4,5,3,6,2,1 2 n个顶点的图的最小生成树必定 d 是不正确的描述。a 不唯一b 权的总和唯一c 不含回路d 有n条边。3...