欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构三套试卷详细分析.docx

    • 资源ID:848812       资源大小:163.66KB        全文页数:10页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构三套试卷详细分析.docx

    数据结构试卷一一、单项选择题(每题2分,共20分)1 .栈和队列的共同特点是(A)。A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点Ps:栈:先进后出;队列:先进先出2 .用链接方式存储的队列,在进行插入运算时(D).A.仅修改头指针B.头、尾指针都要修改C.仅修改尾指针D.头、尾指针可能都要修改ps:新结点的插入和栈顶结点的删除都在链表的表头,即栈顶进行。如果队列为空,即第一个结点为null,那么插入时改变了头指针。3 .以下数据结构中哪一个是非线性结构?(D)A.队列B.栈C.线性表D.二叉树Ps:数据结构二逻辑结构+存储结构。二叉树属于层次关系一一树结构。4 .设有一个二维数组A川,假设A00存放位置在644(10),A2存放位置在676(io),每个元素占一个空间,问A33(存放在什么位置?脚注(K)表示用10进制表示。CA.688B.678C.692D.696Ps:此题画个图即知。可知A0H2的存放位置是646,A2l的存放位置是661,因为A2的存放位置在676,可知两层之差为15,然后即可知道A33的存放位置在676+15+1=692.5 .树最适合用来表示(C)oA.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据Ps:树属于层次关系,所以可表示元素之间具有分支层次关系的数据。6 .二叉树的第k层的结点数最多为(D).2-1B.2K+1C.2K-1D.2k1Ps:二叉树的性质一:在二叉树的第k(k>=l)层最多有2山个结点。7 .假设有18个元素的有序表存放在一维数组A19中,第一个元素放Al中,现进行二分查找,那么查找A3的比拟序列的下标依次为(D)A.1,2,3B.9,5,2,3C.9,5,3D.9,4,2,3Ps:二分查找又称折半查找,优点是比拟次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而杳找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比拟,如果两者相等,那么查找成功;否那么利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,那么进一步查找前一子表,否那么进一步查找后一子表。重更以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。此题分析思路:首先18个元素是在有序表中的,即将它放入一维数组中的时候是有顺序的。那么,第一个比拟应该是(1+18)/2=9;第二次比拟应该是(1+9)72=4;第三次比拟应该是(1+4)/2=2,接下来就是3了。8 .对n个记录的文件进行快速排序,所需要的辅助存储空间大致为CA.0(1)B.0(n)C.0(log2n)D.0(n2)Ps:快速排序是需要一个辅助空间的,该空间的大小最好为C选项,最差情况为B选项,此题选C9 .对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,假设选用H(K)=K%9作为散列函数,那么散列地址为1的元素有(D)个,A.1B.2C.3D.4Ps:散列函数即为将要进行散列存储的数进行一系列的运算,然后将它们确定在散列表中,此题只需将线性表中的数都用H(K)进行计算,然后结果为1的数有几个即为答案。%是取余。10 .设有6个结点的无向图,该图至少应有(A)条边才能确保是一个连通图。A.5B.6C.7D.8Ps:连通图是每两个结点都有一条边相连,没有任何孤立结点。所以6个结点的无向图至少应该有5条边。二、填空题(每空1分,共26分)1 .通常从四个方面评价算法的质量:_止确性_、易读性一、_强壮性_和_高效率2 .一个算法的时间复杂度为(/+/1Og2+14)/2,其数量级表示为0(n)oPs:将该式化简开,可发现为n+log2"+14n,里面计算最复杂的就是n,所以该算法的时间复杂度为n,用数量级表示就是0(n).3 .假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J),那么树中所含的结点数为_9个,树的深度为一3,树的度为_3oPs:根据广义表的表示可知该树的根结点为A,它有三个分支:C、D、H;D下面有EFG三个结点,H下面有IJ两个结点。由此可知结点总数为9,树的深度是层数,即为3;树的度即为结点度的最大值,为3.4 .后缀算式923+-102/-的值为-1o中缀算式13+4X)-2Y/3对应的后缀算式为_34X*+2Y*3/-_oPs:后缀计算分层次一步一步计算。中缀变后缀可将每次计算加个括号,然后将操作符提到括号后面,全部弄完之后将括号去除,这样后缀表达式就全部出来了。5 .假设用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树共有_2n一个指针域,其中有_n-l一个指针域是存放了地址,有n+1一个指针是空指针。Ps:有左孩子和右孩子,每个孩子有一个指针,即共有2n个指针域。根据性质三可证的二叉链表中有n+1个,这也是因为在2n个指针域中只有n-1个存有边信息(即存放了地址)。6 .对于一个具有n个顶点和e条边的有向图和无向图,在其对应的邻接表中,所含边结点分别有一e_个和2e_个。Ps:根据邻接表的定义可知,一个顶点到另一个结点有边即链接。有向图只有一次,而无向图有两次。7 .AOV网是一种一有向无回路的图。8 .在一个具有n个顶点的无向完全图中,包含有_n(nT)/2_条边,在一个具有n个顶点的有向完全图中,包含有_n(n-l)一条边。Ps:首先看题目中的要求是完全图,即每个顶点要和其他n-1个顶点有边相连,那么无向完全图有n(n-l)2o有向完全图即为它的两倍。9 .假定一个线性表为(12,23,74,55,63,40),假设按Key%4条件进行划分,使得同一余数的元素成为一个子表,那么得到的四个子表分别为_(12,40)、_(23,55,63)、(74)和0Ps:原因和选择题第9题一样。10 .向一棵B_树插入元素的过程中,假设最终引起树根结点的分裂,那么新树比原树的高度增加1O11 .在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为-0(logm)_,整个堆排序过程的时间复杂度为_0(nlog2n)一。12 .在快速排序、堆排序、归并排序中,_归并一排序是稳定的。Ps:归并排序是最稳定的排序三、计算题(每题6分,共24分)1.在如下数组A中链接存储了一个线性表,表头指针为AO.next,试写出该线性表。邻接矩阵:3. 一个图的顶点集V和边集E分别为:V=1,2,3,4,5,6,7);E=(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15,(3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25;用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。Ps:克鲁斯卡尔算法:设有一个有n个顶点的连通网N=V,E,最初先构造一个只有n个顶点,没有边的非连通图T=V,E,图中每个顶点自成一个连通分量。当在E中选到一条具有最小权值的边时,假设该边的两个顶点落在不同的连通分量上,那么将此边参加到T中;否那么将此边舍去,重新选择一条权值最小的边。如此.重复下去,直到所有顶点在同一个连通分量上为止。答案:用克鲁斯卡尔算法得到的最小生成树为:(1,2)3,(4,6)4,(1,3)5,(1,4)8,(23)10,(4,7)201. 四、阅读算法(每题7分,共14分)2. 1.inkListmynote(LinkListL)L是不带头结点的单链表的头指针if(L&&L->next)q=L;L=L->next;p=L;Sl:while(p->next)p=p>next;S2:p>next=q;q>next=NULL;)returnL;I请答复以下问题:11)说明语句Sl的功能;答案:查询链表的尾结点(2)说明语句组S2的功能答案:将第一个结点链接到链表的尾部,作为新的尾结点(3)设链表表示的线性表为SiM,an),写出算法执行后的返回值所表示的线性表。答案:返回的线性表为(a2,a3,an,a)3. voidABC(BTNode*BT)(ifBTABC(BT->left);ABC(BT->right);cout<<BT->data<<''该算法的功能是:递归地后杼遍历链式存储的二叉树。五、算法填空(共8分)二叉搜索树的查找一递归算法:boolFind(BTreeNode*BST,ElemTypefcitem)EIemTyPe代表所有数据类型(if(BST=NULL)returnfalse;查找失败elseif(item=BST->data)item=BST->data;查找成功returntrue;elseif(item<BST->data)returnFind(BST->left,item);elsereturnFind(BST->right,item)jBST->right和BST->left顺序可交换。if)六、编写算法(共8分)统计出单链表HL中结点的值等于给定值X的结点数。intCountX(LNode*HL,ElemTypex)答案如下:intCountX(LNode*HL,EIemTypex)inti=0;LNode*p=HL;/i为计数器while(p!=NULL)if(P->data=x)i+;p=p->next;)while,出循环时i中的值即为X结点个数returni;/CountX数据结构试卷二一、选择题(24分)1 .下面关于线性表的表达错误的选项是(D)o(八)线性表采用顺序存储必须占用一片连续的存储空间(B)线性表采用链式存储不必占用一片连续的存储空间(C)线性表采用链式存储便于插入和删除操作的实现(D)线性表采用顺序存储便于插入和删除操作的实现Ps:顺序表具有的缺点之就是不利于插入和删除操作,所以将存储方式改良为链式存储。2 .设哈夫曼树中的叶子结点总数为m,假设用二叉链表作为存储结构,那么该哈夫曼树中总共有(B)个空指针域。(八)2m-1(B)2m(C)2m+l(D)4mPs:哈夫曼树只有叶子和度为2的结点,用二叉链表存储时每个结点都会有一个左孩子,个右孩子,所以空指针域为2u3 .设顺序循环队列Q0:MT的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,那么该循环队列中的元素个数为(C)。(八)R-F(B)F-R(C)(R-F+M)%M(D)(F-R+M)%MPs:根据循环队列的定义可知C是正确的。4 .设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,那么后序遍历该二叉树得到序列为(A)。(八)BADC(B)BCDA(C)CDAB(D)CBDAPs:根据前序和中序遍历可知,C为根结点,A为左子树,D为右子树,B为A的右子树。5 .设某完全无向图中有n个顶点,那么该完全无向图中有(A)条边。(八)n(n-l)

    注意事项

    本文(数据结构三套试卷详细分析.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开