选择填空模拟题大全.doc
《选择填空模拟题大全.doc》由会员分享,可在线阅读,更多相关《选择填空模拟题大全.doc(38页珍藏版)》请在三一文库上搜索。
1、第一章概论二、填空题1.计算机专业人员必须完成的两项基本任务是:数据表示 和 数据处理。2.数据在计算机存储器中的存在形式称为 机内表示。3.概括地说,数据结构课程的主要内容包括: 数据的 逻辑结构、定义在 逻辑结构上的基本运算、数据的 存储结构和运算 的实现。此外,该课程还要考虑各种结构和实现方法的 评价和选择 。4.由一种 逻辑性 结构和一组 基本运算 构成的整体是实际问题的一种数学模型,这种数学模型的建立、选择和实现是数据结构的核心问题。5.存储结构是逻辑结构的 存储 实现。6.数据表示任务是逐步完成的,即数据表示形式的变化过程是 机外表示-逻辑结构-存储结构。7.数据处理任务也是逐步完
2、成的,即转化过程是 处理要求-基本运算-运算算法。8.从数据结构的观点看,通常所说的数据应分成三个不同的层次,即数据、数据元素和数据项。9.根据需要,数据元素又被称为元素、结点、顶点或记录。10.在有些场合下,数据项又称为字段或域,它是数据的不可分割的最小标识单位。11.从某种意义上说,数据、数据元素和数据项实际反映了数据组织的三个层次,数据可由若干个 数据元素 构成,数据元素可由若干个 数据项 构成。12.根据数据元素之间关系的不同特性,通常有集合、线性结构、树形结构、图状结构四类基本逻辑结构,它们反映了四类基本的数据组织形式。13.根据操作的效果,可将运算分成以下两种基本类型:加工 型运算
3、其操作改变了原逻辑结构的“值”,如结点个数、某些结点的内容等;引用 型运算,其操作不改变原逻辑结构,只从中提取某些信息作为运算的结果。14.将以某种逻辑结构S为操作对象的运算称为“定义在S上的运算”,简称“S上运算”。15.一般地,可能存在同一逻辑结构S上的两个运算A和B,A的实现需要或可以利用B,而B的实现不需要利用A。在这种情况下,称A可以“ 归纳 ”为B。16.存储实现的基本目标是建立数据的 机内表示 。17.一般地,一个存储结构包括存储结点、数据元素之间关联方式的表示、附加设施 三个主要部分。18.通常,存储结点之间可以有顺序存储方式、链式存储方式、索引存储方式、散列存储方式四种关联
4、方式,称为四种基本存储方式。19.可用任何一种存储方式所规定的存储结点之间的关联方式来间接表达给定逻辑结构S中数据元素之间的逻辑关系。由此得到的存储结构,称为 给定逻辑结构S的存储实现或 存储映象 。20.一个运算的实现是指一个完成该运算功能的 程序 。运算实现的核心是处理步骤的规定,即 算法设计 。21.任何算法都必须用某种语言加以描述。根据描述算法的语言的不同,可将算法分为:运行终止的程序可执行部分、伪语言算法、非形式算法 三类。22.数据结构课程着重评论算法的 时空性能,又称为“ 算法分析 ”。23.通常从正确性能、易读性、健壮性、高效性等几方面评价算法的(包括程序)的质量。24.一个算
5、法的时空性能是指该算法的 时间性能(或时间效率)和 空间性能(或空间效率),前者是算法包含的 计算量,后者是算法需要的 存储量。25.通常采用下述办法来估算求解某类问题的各个算法在给定输入下的计算量: 根据该类问题的特点合理地选择一种或几种操作作为“标准操作”; 确定每个算法在给定输入下共执行了多少次 标准操作,并将此次数规定为该算法在给定输入下的 计算量 。26.通常,一个算法在不同输入下的计算量是不同的。则可用以下两种方式来确定一个算法的计算量:以算法在所有输入下的计算量的最大值作为算法的计算量,这种计算量称为算法的 最坏情况时间复杂性或最坏情况时间复杂度 。以算法在所有输入下的计算量的加
6、权平均值作为算法的计算量,这种计算量称为算法的 平均时间复杂性 或 平均时间复杂度 。27.最坏情况时间复杂性和平均时间复杂性统称为 时间复杂性或时间复杂度 。28.在一般情况下,一个算法的时间复杂性是 算法输入规模 的函数。29.一个算法的输入规模或问题的规模是指 作为该算法输入的数据所含数据元素的数目,或与此数目有关的其他参数 。30.常见时间复杂性的量级有:常数阶O(1)、对数阶O(log2n)、线性阶O (n)、平方阶O(n2)、和指数阶O(2n)。通常认为,具有指数阶量级的算法是 实际不可计算 ,而量级低于平方阶的算法是 高效 的。31.数据结构的基本任务是数据结构的 设计和实现 。
7、32.数据结构的课程的主要内容可以概括为:数据结构的定义、数据结构的实现、数据结构的评价和选择 。33. 数据的逻辑结构 与数据元素本身的内容和形式无关。34.从逻辑关系上讲,数据结构主要分为两大类,它们是 线性结构和非线性结构 。35.程序段“for(i=l;i=n;i+)k+;for(j=1;j=n;j+)l+=k;”的时间复杂度T(n)= O(n2)。36.程序段“i=1;while(i=0)个结点的线性结构表示成(a1,a2,an),其中每个ai代表一个 结点 。a1称为 起始 结点,an称为 终端 结点,i称为ai在线性表中的 序号 或位置 。对任意一对相邻结点ai、ai1(1=i=
8、1)个内存单元,其中,b是顺序表的第一个存储结点的第一个单元的内存地址,那么,第i个结点ai的存储地址为b+(i-1)x k。10.以下为顺序表的插入运算,分析算法,请在_处填上正确的语句。Void insert_sqlist(sqlist L,datatype x,int i)/*将X插入到顺序表L的第i-1个位置*/ if( L.last = maxsize) error(“表满”);if(iL.last+1)error(“非法位置”);for(j=L.last;j=i;j-) Ldataj=Ldataj-1;L.datai-1=x;L.last=L.last+1;11.对于顺序表的插入算
9、法insert_sqlist来说,若以结点移动为标准操作,则插入算法的最坏时间复杂性为n ,量级是O(n) 。插入算法的平均时间复杂性为n/2 ,平均时间复杂性量级是O(n) 。12.以下为顺序表的删除运算,分析算法,请在_处填上正确的语句。 void delete_sqlist(sqlist L,int i) /*删除顺序表L中的第i-1个位置上的结点*/if(iL.last)error(“非法位置”); for(j=i+1;j=L.last;j+) L.dataj-2=l.dataj-1; L.last=L.last-1;13.对于顺序表的删除算法delete_sqlist来说,若以结点移
10、动为标准操作,最坏情况时间复杂性及其量级分别是n-1和O(n),其平均时间复杂性及其量级分别为(n-1)/2和O(n)。14.以下为顺序表的定位运算,分析算法,请在_处填上正确的语句。int locate_sqlist(sqlist L,datatype X) /*在顺序表L中查找第一值等于X的结点。若找到回传该结点序号;否则回传0*/ i=1 ; while(iL.last)&(L.datai-1!=X)i+; if( iL.last )return(i); else return(0);15.对于顺序表的定位算法,若以取结点值与参数X的比较为标准操作,平均时间复杂性量级为O(n) 。求表长
11、和读表元算法的时间复杂性为O(1) 。16.在顺序表上,求表长运算LENGTH(L)可通过输出 L.last 实现,读表元运算GET(L,i)可通过输出 L.datai-1 实现。17.线性表的常见链式存储结构有 单链表、循环链表和双链表 。18.单链表表示法的基本思想是用 指针 表示结点间的逻辑关系。19.所有结点通过指针的链接而组织成 单链表 。20.为了便于实现各种运算,通常在单链表的第一个结点之前增设一个类型相同的结点,称为 头结点 ,其它结点称为 表结点 。21.在单链表中,表结点中的第一个和最后一个分别称为 首结点 和 尾结点 。头结点的数据域可以不存储 任何信息 ,也可以存放一个
12、 特殊标志或表长 。22.单链表INITIATE(L)的功能是建立一个空表。空表由一个 头结点 和一个头结点 组成。23.INITIATE()的功能是建立一个空表。请在_处填上正确的语句。 lklist initiate_lklist() /*建立一个空表*/ t=malloc(size) ; t-next=NULL ; return(t);24.以下为求单链表表长的运算,分析算法,请在 _处填上正确的语句。 int length_lklist(lklist head) /*求表head的长度*/ p=haed ;j=0;while(p-next!=NULL) p=p-next ; j+;re
13、turn(j); /*回传表长*/25.以下为单链表按序号查找的运算,分析算法,请在_处填上正确的语句。 pointer find_lklist(lklist head,int i) p=head;j=0; while( p-next!=NULL)&(jnext; j+; if(i=j) return(p); else return(NULL);26.以下为单链表的定位运算,分析算法,请在_处填上正确的语句。 int locate_lklist(lklist head,datatype x) /*求表head中第一个值等于x的结点的序号。不存在这种结点时结果为0*/ p=head;j=0;wh
14、ile( p-next!=NULL)&(p-data!=x )p=p-next;j+;if (p-data=x) return(j);else return(0);27.以下为单链表的删除运算,分析算法,请在_处填上正确的语句。 void delete_lklist(lklist head,int i) p=find_lklist(head,i-1); if( p!=NULL)&(p-next!=NULL ) q= p-next ; p-next=p-next; free(q); else error(“不存在第i个结点”)28.以下为单链表的插入运算,分析算法,请在_处填上正确的语句。 vo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 选择 填空 模拟 大全
