2023年湖北省数据概述基础

发布 2022-04-26 07:48:28 阅读 9170

(1) (3分)给出适用于计数排序的数据表定义;

(2) (7分)使用pascal或c语言编写实现计数排序的算法;

(3) (4分)对于有n个记录的表,关键码比较次数是多少?

(4) (3分)与简单选择排序相比较,这种方法是否更好?为什么?

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

#define true 1

#define false 0

typedef struct node

*btree;

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

if(t!=null &&flag)

//不是完全二叉树

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

//judgebst算法结束。

2023年湖北省数据总结基础

1 给出折半查找的递归算法,并给出算法时间复杂度性分析。2 设有一组初始记录关键字为 45,80,48,40,22,78 要求构造一棵二叉排序树并给出构造过程。3 有一个带头结点的单链表,每个结点包括两个域,一个是整型域info,另一个是指向下一个结点的指针域next。假设单链表已建立,设计算法删除...

2019湖北省数据简介高级

1 编程实现单链表的就地逆置。23 在数组a 1.n 中有n个数据,试建立一个带有头结点的循环链表,头指针为h,要求链中数据从小到大排列,重复的数据在链中只保存一个。2 题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均值排列与按每行元素之和排列是一个意思。所以应先求出各行元...

2019湖北省数据简介高级

1 编程实现单链表的就地逆置。23 在数组 a 1.n 中有n个数据,试建立一个带有头结点的循环链表,头指针为h,要求链中数据从小到大排列,重复的数据在链中只保存一个。2 题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均值排列与按每行元素之和排列是一个意思。所以应先求出各行...