北师大《数据结构》在线作业.docx_第1页
北师大《数据结构》在线作业.docx_第2页
北师大《数据结构》在线作业.docx_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1/顺序存储结构中数据元素之间的逻辑关系是由( )表示的。线性结构非线性结构存储位置指针2/算法指的是( )。对特定问题求解步骤的一种描述,是指令的有限序列。计算机程序解决问题的计算方法数据处理3/算法在发生非法操作时可以作出处理的特性称为( )。健壮性确定性可行性正确性4/若某线性表中最常用的操作是取第i 个元素和找第i个元素的前趋,则采用( )存储方法最节省时间。顺序表单链表双链表单循环链表5/头结点的单链表head为空的判定条件是( )。head=NULLhead-next=NULLhead-next=headhead!=NULL6/单循环链表的主要优点是( )。不再需要头指针了从表中任一结点出发都能扫描到整个链表;已知某个结点的位置后,能够容易找到它的直接前趋;在进行插入、删除操作时,能更好地保证链表不断开。7/使用双向链表存储线性表,其优点是可以( )。方便双向查找更方便数据的插入和删除节约存储空间很快回收存储空间8/设数组Sn作为两个栈S1和S2的存储空间,对任何一个栈只有当Sn全满时才不能进行进栈操作。为这两个栈分配空间的最佳方案是( )。S1的栈底位置为0,S2的栈底位置为n-1S1的栈底位置为0,S2的栈底位置为n/2S1的栈底位置为0,S2的栈底位置为nS1的栈底位置为0,S2的栈底位置为19/设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5、e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出队的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应该是( )。643210/表达式a*(b+c)-d的后缀表达式是( )。abcd*+-abc+*d-abc*+d-+*abcd11/深度为k的完全二叉树至少有()个结点。2k-2+12k-12k-12k1-112/一个高度为h的满二叉树共有n个结点,其中有m个叶子结点,则有()成立。n=h+mh+m=2nm=h-1n=2h-113/设森林中有4棵树,树中结点的个数依次为n1、n2、n3、n4,则把森林转换成二叉树后,根结点的左子树上有()个结点。n1-1n1n1+n2+n3n2+n3+n414/有一个按元素值排好序的顺序表(长度大于2),分别用顺序查找和折半查找与给定值相等的元素,比较次数分别是s和b,在查找不成功的情况下,s和b的关系是( )。s=bsbs不一定15/散列技术中的冲突指的是( )。两个元素具有相同的序号两个元素的键值不同,而其他属性相同数据元素过多不同键值的元素对应于相同的存储地址简答带头结点的链表和不带头结点的链表有什么不同?单链表是一种最为基本的数据结构,常用的单链表又分为带头结点和不带头结点两种。从线性表的定义可以知道,线性表要求允许在任意位置进行插入和删除操作。所有的链表都有一个头指针head, 带头结点的链表中head的数据项为空 。具体分析。1.带头节点的链表的插入, 首先使用临时变量p等于要插入之前的节点(不管具体的插入位置) ,之后不管要插入的节点x是插到链表头还是插到链表的其他位置都是如下语句: x-next = p-next;p-next = x;2.不带头结点的链表的插入, 若要插到链表的开头则x-next = head-next;head = x;/这里不再是head-next = x若插到链表的其他位置则p = 插入之前的节点x-next = p-next;p-next = x;3.带头结点的链表的删除, 不解释,同样不存在删除位置的差异。4.不带头结点的链表的删除,删除第一个节点时,head=head-next。删除其他节点时,head的值不会改变。综上所述,带头节点的单链表,不论删除和插入的位置如何,不需要修改head的值,不带头结点的单链表则需要修改head的值。所以单链表 一般为带头结点的单链表 。论述如果矩阵A中存在这样的一个元素Aij满足条件:Aij是第i行中值最小的元素,且又是第j列中值最大的元素,则称之为该矩阵的一个马鞍点。编写一个函数计算出mn的矩阵A的所有马鞍点。提示:依题意,先求出每行的最小值元素,放入minm之中,再求出每列的最大值元素,放入maxn之中,若某元素既在mini中,又在maxj中,则该元素Aij便是马鞍点,找出所有这样的元素,即找到了所有马鞍点/#include stdafx.h/vc+6.0#include stdio.hvoid main(void) int a55,i,j,jj,n,m,x,max,f; printf(Enter m & n(Positive integer).n); scanf(%d%d,&m,&n); printf(Type some data.n); for(i=0;im;i+) for(j=0;jn;scanf(%d,&aij+); for(max=(1sizeof(int)*8-1),f=i=0;im;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论