2023年安徽省基础数据高级

发布 2023-12-23 12:50:03 阅读 7732

1、设指针变量p指向双向链表中结点a,指针变量q指向被插入结点b,要求给出在结点a的后面插入结点b的操作序列(设双向链表中结点的两个指针域分别为llink和rlink)。2、题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均值排列与按每行元素之和排列是一个意思。所以应先求出各行元素之和,放入一维数组中,然后选择一种排序方法,对该数组进行排序,注意在排序时若有元素移动,则与之相应的行中各元素也必须做相应变动。

void translation(float *matrix,int n)

/本算法对n×n的矩阵matrix,通过行变换,使其各行元素的平均值按递增排列。

sum=p[i]; p[i]=p[k]; p[k]=sum; /交换一维数组中元素之和。}/if}//for i

free(p); 释放p数组。}/translation

算法分析]算法中使用选择法排序,比较次数较多,但数据交换(移动)较少。若用其它排序方法,虽可减少比较次数,但数据移动会增多。算法时间复杂度为o(n2).

3、设t是给定的一棵二叉树,下面的递归程序count(t)用于求得:二叉树t中具有非空的左,右两个儿子的结点个数n2;只有非空左儿子的个数nl;只有非空右儿子的结点个数nr和叶子结点个数n0。n2、nl、nr、n0都是全局量,且在调用count(t)之前都置为 struct node

int data; struct node *lchild,*rchild;}node;int n2,nl,nr,n0;void count(node *t)

if (t->lchild!=null) if (1)__n2++;else nl++;else if (2)__nr++;else (3)__

if(t->lchild!=null)(4)__if (t->rchild!=null) (5)__

26.树的先序非递归算法。

void example(b)btree *b;

btree *stack[20], p;int top;if (b!=null)

top=1; stack[top]=b;while (top>0)

p=stack[top]; top--;printf(“%d”,p->data);if (p->rchild!=null)

if (p->lchild!=null)(3)__4)__

4、题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均值排列与按每行元素之和排列是一个意思。所以应先求出各行元素之和,放入一维数组中,然后选择一种排序方法,对该数组进行排序,注意在排序时若有元素移动,则与之相应的行中各元素也必须做相应变动。

void translation(float *matrix,int n)

/本算法对n×n的矩阵matrix,通过行变换,使其各行元素的平均值按递增排列。

sum=p[i]; p[i]=p[k]; p[k]=sum; /交换一维数组中元素之和。}/if}//for i

free(p); 释放p数组。}/translation

算法分析]算法中使用选择法排序,比较次数较多,但数据交换(移动)较少。若用其它排序方。

法,虽可减少比较次数,但数据移动会增多。算法时间复杂度为o(n2).

5、矩阵中元素按行和按列都已排序,要求查找时间复杂度为o(m+n),因此不能采用常规的二层循环的查找。可以先从右上角(i=a,j=d)元素与x比较,只有三种情况:一是a[i,j]>x,这情况下向j小的方向继续查找;二是a[i,j]void search(datatype a[ ]int a,b,c,d, datatype x)

/n*m矩阵a,行下标从a到b,列下标从c到d,本算法查找x是否在矩阵a中。else if (a[i][j]>x) j--;else i++;

if(flag) printf(“a[%d][%d]=%d”,i,j,x假定x为整型。else printf(“矩阵a中无%d元素”,x);}算法search结束。

算法讨论]算法中查找x的路线从右上角开始,向下(当x>a[i,j])或向左(当x6、冒泡排序算法是把大的元素向上移(气泡的上浮),也可以把小的元素向下移(气泡的下沉)请给出上浮和下沉过程交替的冒泡排序算法。

48.有n个记录存储在带头结点的双向链表中,现用双向起泡排序法对其按上升序进行排序,请写出这种排序的算法。(注:双向起泡排序即相邻两趟排序向相反方向起泡)

2019安徽省数据分析入门

1 编写一个过程,对一个n n矩阵,通过行变换,使其每行元素的平均值按递增顺序排列。2 已知有向图g v,e 其中v e 写出g的拓扑排序的结果。g拓扑排序的结果是 v1 v2 v4 v3 v5 v6 v7 3 根据二叉排序树中序遍历所得结点值为增序的性质,在遍历中将当前遍历结点与其前驱结点值比较,...

安徽省2023年电工基础知识试题

一 单项选择题 共 25 题,每题 2 分,每题的备选项中,只有 1 个事最符合题意 1 维修电工以电气原理图,安装接线图和 最为重要。a 展开接线图。b 剖面图。c 平面布置图。d 立体图 2 塑料护套线适用于潮湿和有腐蚀性的特殊场所,室内明敷时,离地最小距离不得低于 m。a 0.15 b 1.5...

安徽省2023年会计从业考试《会计基础》

教材内容重要层次 复习时间参考 1.最重要 第三章会计等式与复式记账 会计等式 试算平衡 会计分录 平行登记 第四章会计凭证 原始凭证和记账凭证的填制要求 审核内容及处理方法 第五章会计账簿 账簿的种类 不同账户对应不同的账簿形式 对账 错账更正等 第七章财产清查 银行存款余额调节表的编制 存货和固...