收藏 分销(赏)

几道常用数据结构考试试题及答案培训讲学.docx

上传人:天**** 文档编号:3850892 上传时间:2024-07-22 格式:DOCX 页数:6 大小:210.23KB 下载积分:6 金币
下载 相关 举报
几道常用数据结构考试试题及答案培训讲学.docx_第1页
第1页 / 共6页
几道常用数据结构考试试题及答案培训讲学.docx_第2页
第2页 / 共6页


点击查看更多>>
资源描述
学习-----好资料 一、编程题 (一) 对于二维整数数组A[m][n],对下列三种情况,分别编写相应的函数。 1. 求数组所有边缘元素的数值和。 int sum1(int A[M][N],int m ,int n) { 2.求从A[0][0]开始的互不相邻的所有元素的和 注:一个元素的八个方向上的第一个元素均为相邻元素。 int sum2 (int A[M][N] , int m , int n) { 3. 假定m=n,并为偶数,请分别计算正、反两条对角线上的元素值之和。 int sum3(int A[M][N] , int n) { 答 (1)本小题是计算数组A的最外围的4条边的所有元素之和。可以先累加各个靠边的元素的值,再减去位于4个角上重复相加的元素的值。 int sum1(int A[M][N],int m ,int n){ int s=0,i,j; for(i=0;i<m;i++){s+=A[i][0];s+=A[i][n-1];} for(j=0;j<n;j++){s+=A[0][j];s+=A[m-1][j];} s=s-A[0][0]-A[0][n-1]-A[m-1][0]-A[m-1][n-1]; return s; } (2)本小题的互不相邻是指上、下、左、右、对角线均互不相邻,即求第0,2,4,…..,列的所有元素的值之和。 int sum2(int A[M][N],int m ,int n){ int s=0,i,j; for(i=0,i<m,i+=2) for(j=0,j<n,j+=2) s+=A[i][j]; return s; } (3)本小题中一条对角线是A[i][j],i=0,1,…..n-1;另一条对角线是A[i][n-i-1],i=0,1,…..n-1。可以用循环实现。 int sum3(int A[M][N] ,int n){ int s=0,i; for(i=0,i<n,i++) {s+=A[i][j];s+=A[i][n-i-1];} return s; } (二) 设顺序表L是一个递增有序表,试写一算法,将x插入L中,并使L仍是一个有序表。 因已知顺序表L是递增有序表,所以只要从顺序表终端结点(设为i位置元素)开始向前寻找到第一个小于或等于x的元素位置i后插入该位置即可。 在寻找过程中,由于大于x的元素都应放在x之后,所以可边寻找,边后移元素,当找到第一个小于或等于x的元素位置i时,该位置也空出来了。 算法如下: void InsertIncreaseList( Seqlist *L , Datatype x ) { inti; if ( L->length>=ListSize) Error(“overflow"); for ( i=L -> length ; i>0 && L->data[ i-1 ] > x ; i--) L->data[ i ]=L->data[ i ] ; // 比较并移动元素 L->data[ i ] =x; L -> length++; } 只要从终端结点开始往前找到第一个比x大(或相等)的结点数据,在这个位置插入就可以了。算法描述如下: int InsertDecreaseList(SqList*L,elemtype x) { int i; if((*L). len>=maxlen) {printf("over flow"); return(0); } for(i=(*L). len; i>0&&(*L). elem[i-1]<x; i--) (*L). elem[i]=(*L). elem[i-1]; //比较并移动元素 (*L). elem[i]=x; (*L). len++; return(1); } 二、解答题(20分) (一) 设有一个求解汉诺塔(Hanoi)的递归算法 voidHANOI (int n , int peg1 , int peg2 , int peg3) { if (n= =1) printf(”move %d to %d\n”,peg1,peg3); else { HANOI (n-1, peg1, peg3, peg2); printf(”move %d to %d\n”,peg1,peg3); HANOI (n-1, peg2, peg1, peg3) ; } } 假定采用HANOI(3,1,2,3)去调用上述算法,则写出整个输出结果的前四行内容。 三、画图题(20分) (一) 某子系统在通信联络中只可能出现8种字符,其出现的概率分别为0.05,0.29,0.07,0.08,0.14,0.23,0.03,0.11试设计赫夫曼编码 23 11 5 3 29 14 7 8 0 0 0 0 0 0 一、 消费者分析0 1 1 1 5、就业机会和问题分析1 月生活费 人数(频率) 百分比1 1 1 (二)对“碧芝”自制饰品店的分析 3. www。oh/ov。com/teach/student/shougong/ 标题:上海发出通知为大学生就业—鼓励自主创业,灵活就业 2004年3月17日 3、消费“多样化” 可是创业不是一朝一夕的事,在创业过程中会遇到很多令人难以想象的疑难杂症,对我们这些80年代出生的温室小花朵来说,更是难上加难。 400-500元 13 26% (二)DIY手工艺品的“热卖化” 更多精品文档
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服