北航 1999-2002 程序设计与数据结构考研试题
数据结构考研真题及其答案

一、选择题1. 算法的计算量的大小称为计算的(B )。
【北京邮电大学2000 二、3 (20/8分)】A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C )【中科院计算所1998 二、1 (2分)】A.问题的规模 B. 待处理数据的初态 C. A和B3.计算机算法指的是(C),它必须具备(B)这三个特性。
(1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列D. 调度方法(2) A.可执行性、可移植性、可扩充性B. 可执行性、确定性、有穷性C. 确定性、有穷性、稳定性D. 易读性、稳定性、安全性【南京理工大学1999 一、1(2分)【武汉交通科技大学1996 一、1(4分)】4.一个算法应该是(B )。
【中山大学1998 二、1(2分)】A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A和C.5. 下面关于算法说法错误的是( D )【南京理工大学2000 一、1(分)】A.算法最终必须由计算机程序实现B.为解决某问题的算法同为该问题编写的程序含义是相同的C. 算法的可行性是指指令不能有二义性D. 以上几个都是错误的6. 下面说法错误的是( C )【南京理工大学2000 一、2 (分)】(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1) B.(1),(2) C.(1),(4) D.(3)7.从逻辑上可以把数据结构分为( C )两大类。
【武汉交通科技大学1996 一、4(2分)】A.动态结构、静态结构B.顺序结构、链式结构C.线性结构、非线性结构D.初等结构、构造型结构8.以下与数据的存储结构无关的术语是( D )。
【北方交通大学2000 二、1(2分)】A.循环队列 B. 链表 C. 哈希表 D.栈9.以下数据结构中,哪一个是线性结构(D )【北方交通大学2001 一、1(2分)】A.广义表 B. 二叉树 C. 稀疏矩阵 D. 串10.以下那一个术语与数据的存储结构无关( A )【北方交通大学2001 一、2(2分)】A.栈 B. 哈希表 C. 线索树 D. 双向链表11.在下面的程序段中,对x的赋值语句的频度为(C )【北京工商大学2001 一、10(3分)】FOR i:=1 TO n DOFOR j:=1 TO n DOx:=x+1;A.O(2n) B.O(n) C.O(n2) D.O(log2n) 12.程序段FOR i:=n-1 DOWNTO 1 DOFOR j:=1 TO i DOIF A[j]>A[j+1]THEN A[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是( D )A. O(n)B. O(nlogn)C. O(n3)D. O(n2) 【南京理工大学1998一、1(2分)】13.以下哪个数据结构不是多型数据类型( D )【中山大学1999 一、3(1分)】A.栈B.广义表C.有向图D.字符串14.以下数据结构中,( A )是非线性数据结构【中山大学1999 一、4】A.树B.字符串C.队D.栈15. 下列数据中,(C)是非线性数据结构。
北京工业大学 北工大 1999年数据结构 考研真题及答案解析

北京工业大学1999年硕士研究生入学考试试题考试科目:数据结构一、(26分)填空、选择(一个或多个)题,1-6题每小题2分:1下面的叙述中,不正确的是()A关键活动不按期完成就会影响整个工程的完工时间。
B任何一个关键工程提前完成,将使整个工程提前完成。
C所有关键活动都提前完成,则使整个工程提前完成。
D提些关键活动若提前完成,则将使整个工程提前完成。
2 下面的排序算法中,不稳定得是()A 起泡排序B 折半插入排序C简单选择排序D希尔排序E基数排序F堆排序。
3包含结点A,B,C的二叉树有-----------种不同的状态,---------种不同的二叉树。
4包含结点A,B,C的树有------种不同形态,------种不同的树。
5分块检索中,若索引表和各块内存均用顺序查找,则有900各元素的线性表分成-----块最好:若分成25块;其平均查找长度为--------。
6下面的程序段中,对x的赋值语句的频度为------------(表示为n的函数)FOR I:= 1TO N DOFOR J:=1 TOI DOFOR K:=I TO J DO x:=x+DELTA;7(8分)设有字符序列Q H C Y P A M S R D F X要求按字符升列排序:采用初是长为4的希尔(3bell)排序,一趟扫描的结果是――――――――― 采用以元素为分界元素的快速排序,一躺扫描的结果是------------。
8(6分)已知广义表:A-(0),B-(),C-(a,b,c,d),D-(A,B,C)它们的存储结构图为(接两种结构种的任一种即可):二(6分)编写递归程序将二叉树逆时针旋转90度打印出来。
如右图:(要求用类PASCAL 语言,并描述结构)。
三 (8分)用依次输入的关键字13,29,41,19,5,1,7和6建一棵三阶B-树,画出建该树的变化过程示意图(每插入一个结点至少用一张图)。
四(共20分)已知顶点1——6和输入边与权值的序列(如右框中): 2 4 6 每行三个数表示一条边的两个端点和其权值,共11行。
北航数据结构与程序设计真题 北航991真题及答案

20XX年“数据结构与C程序设计”(代码991)试题一、单项选择题(本题共20分,每小题各2分)1.对于长度为n的线性表,建立其对应的单链表的时间复杂度为( )。
A.O(1);B.O(log2n);.O(n);D.O(n2)。
2.一般情况下,在一个双向链表中插入一个新的链结点,( )。
A.需要修改4个指针域内的指针;B.需要修改3个指针域内的指针;C.需要修改2个指针域内的指针;D.只需要修改1个指针域内的指针。
3.假设用单个字母表示中缀表达式中的一个运算数(或称运算对象),并利用堆栈产生中缀表达式对应的后缀表达式。
对于中缀表达式A+B*(C/D-E),当从左至右扫描到运算数E时,堆栈中的运算符依次是( )。
(注:不包含表达式的分界符)A.+*/-;B.+*(/-;C.+*-;.+*(-。
4.若某二叉排序树的前序遍历序列为50,20,40,30,80,60,70,则后序遍历序列为( )。
A.30,40,20,50,70,60,80;B.30,40,20,70,60,80,50;C.70,60,80,50,30,40,20;D.70,60,80,30,40,20,50。
5.分别以6, 3, 8, 12, 5, 7对应叶结点的权值构造的哈夫曼(Huffman) 树的深度为( )。
A.6;B.5;C.4;D.3。
6.下列关于图的叙述中,错误的是( )。
A.根据图的定义,图中至少有一个顶点;B.根据图的定义,图中至少有一个顶点和一条边(弧);C.具有n个顶点的无向图最多有n(n-1)/2条边;D.具有n个顶点的有向图最多有n(n-1)条边(弧)。
7.若在有向图G的拓扑序列中,顶点vi在顶点vj之前,则下列4种情形中不可能出现的是( )。
A.G中有弧<vi,vj>;B.G中没有弧<vi,vj>;C.G中有一条从顶点vi到顶点vj的路径;D.G中有一条从顶点vj到顶点vi的路径。
北京航空航天大学程序设计与数据结构专业考研真题

北京航空航天大学程序设计与数据结构专业考研真题(2000年)一、选择题(2’x10)1.在非空双向循环链表中q所指的结点前插入一个由p所指的链接点的过程依次为:rlink(p)←q;llink(p)←llink(q);llink(q)←p;_________。
(A)rlink(q)←p(B)rlink(llink(q))←p(C)rlink(llink(p))←p(D)rlink(rlink(p))←p2.若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B(1)1:2n n+⎡⎤⎢⎥⎣⎦中,则在B中确定a ij(i<j)的位置k的关系为_________。
(A)(1)2i ij*-+(B)(1)2j ji*-+(C)(1)2i ij*++(D)(1)2j ji*++3.某堆栈的输入序列为a,b,c,d,下面的四个序列中,_________不可能是它的输出序列。
(A)a,c,b,d(B)b,c,d,a(C)c,d,b,a(D)d,c,a,b4.深度为h的满m叉数的第k层有_________个结点。
(1≤k≤h)(A)m k-1(B)m k-1 (C)m h-1(D)m h-15.具有10个叶结点的二叉树中有_________个度为2的结点。
(A)8 (B)9 (C)10 (D)116.要连通具有n个顶点的有向图,至少需要_________条边。
(A)n-1 (B)n(C)n+1 (D)2n7.已知有向图G=(V,E),其中V={v1,v2,v3,v4,v5,v6,v7},E={<v1,v2>,<v1,v3>,<v1,v4>,<v2,v5>,<v3,v5>,<v3,v6>,<v4,v6>,<v5,v7>,<v6,v7>},G的拓扑序列是_________。
北航数据结构与程序设计真题2013年北航991真题及答案

2013年''数据结构与C程序设计〃(代码991)试题一、单项选择题(本题共20分,每小题各2分)1.对于长度为n的线性表,建立其对应的収链表的时间复朵度为()。
A.0(1): B・ O(log2n):・ O(n): D・ O(n2)n2.一般情况下,在一个双向链表中插入一个新的链结点,()。
A.需耍修改4个抬针域内的指针:B・需要修改3个指针域内的抬针:C.需要修改2个抬针域内的抬针:D.只需要修改1个指针域内的抬针。
3.假设用单个字母表示中缀表达式中的一个运算数(或称运算对彖).并利用堆栈产生中缀表达式对应的后缀表达式。
对于中缀表达式A+B^C/D-E),十从左至右扫描到运算数E时,堆栈中的运算符依次是()。
(注:不包含表达式的分界符)A.+*/-:B. +*(/-: C・ +*-:・ +*(-o4.若某二叉排序树的前序遍历序列为50,20,40,30,80,60,70,则后序遍历序列为()。
A. 30,40,20,50,70,60,80:B. 30,40,20,70,60,80,50:C. 70,60,80,50,30,40,20:D. 70,60,80,30,40,20,50.5.分别以6, 3, 8, 12, 5, 7对应叶结点的权值构造的哈夫曼(Huffman)树的深度为()。
A. 6: B・ 5: C・ 4: D・ 3。
&下列关于图的叙述中,错误的是()0A.根据图的定义,图中至少有一个顶点:B.根据图的定义.图中至少有一个顶点和一条边(弧):C.具有n个顶点的无向图最多有n(n-l)/2条边:D.具有n个顶点的有向图最多有n(n-l)条边(弧)。
7.若在有向图G的拓扑序列中.顶点W在顶点vj之前,则下列4种情形中不可能岀现的是()。
A.G 中有弧vvi,vj>:B.G 中没有3ft<vi r vj>;c. G中有一条从顶点W到顶点vj的路径:D・G中有一条从顶点vj到顶点vi的路径。
北京航空航天大学991数据结构与C语言程序设计历年考研真题专业课考试试题

2017年北京航空航天大学991数据 结构与C语言程序设计考研真题
2018年北京航空航天大学991数据 结构与C语言程序设计考研真题
目 录
2010年北京航空航天大学993数据结构与C语言程序设计考研真题 2011年北京航空航天大学991数据结构与C语言程序设计考研真题 2012年北京航空航天大学991数据结构与C语言程序设计考研真题 2013年北京航空航天大学991数据结构与C语言程序设计考研真题 2014年北京航空航天大学991数据结构与C语言程序设计考研真题 2015年北京航空航天大学991数据结构与C语言程序设计考研真题 2016年北京航空航天大学991数据结构与C语言程序设计考研真题 2017年北京航空航天大学991数据结构与C语言程序设计考研真题 2018年北京航空航天大学991数据结构与C语言程序设计考研真题
2014年北京航空航天大学991数据 结构与C语言程序设计考研真题
2015年北京航空航天大学991数据 结构与C语言程序设计考研真题
2016年北京航空航天大学991数据 结构与C语言程序设计考研真题
2010年北京航空航天大学993数据 结构与C语言程序设计考研真题
2011年北京航空航天大学991数据 结构与C语言程序设数据 结构与C语言程序设计考研真题
2013年北京航空航天大学991数据 结构与C语言程序设计考研真题
数据结构考研试题精选及答案第10章排序

第10章 排序排序排序一、选择题 1.某内排序方法的稳定性是指.某内排序方法的稳定性是指( )( )( )。
【南京理工大学【南京理工大学 1997 1997 1997 一、一、一、101010((2分)】 A .该排序算法不允许有相同的关键字记录该排序算法不允许有相同的关键字记录 B B B..该排序算法允许有相同的关键字记录记录C .平均时间为0(n log n n log n)的排序方法)的排序方法)的排序方法D D D.以上都不对.以上都不对.以上都不对2.下面给出的四种排序法中下面给出的四种排序法中( )( )( )排序法是不稳定性排序法。
排序法是不稳定性排序法。
【北京航空航天大学北京航空航天大学 1999 1999 1999 一、一、10 10 ((2分)】 A. A. 插入插入插入 B. B. B. 冒泡冒泡冒泡 C. C. C. 二路归并二路归并二路归并 D. D. D. 堆积堆积堆积 3.下列排序算法中,其中(.下列排序算法中,其中( )是稳定的。
)是稳定的。
)是稳定的。
【福州大学【福州大学 1998 1998 1998 一、一、一、3 (23 (2分)】A. A. 堆排序,冒泡排序堆排序,冒泡排序堆排序,冒泡排序B. B. B. 快速排序,堆排序快速排序,堆排序快速排序,堆排序C. C. 直接选择排序,归并排序直接选择排序,归并排序直接选择排序,归并排序D. D. D. 归并排序,冒泡排序归并排序,冒泡排序归并排序,冒泡排序4.稳定的排序方法是(.稳定的排序方法是( )) 【北方交通大学【北方交通大学【北方交通大学 2000 2000 2000 二、二、二、33(2分)】 A .直接插入排序和快速排序.直接插入排序和快速排序 B B B.折半插入排序和起泡排序.折半插入排序和起泡排序.折半插入排序和起泡排序C .简单选择排序和四路归并排序.简单选择排序和四路归并排序D D D.树形选择排序和.树形选择排序和shell 排序排序5.下列排序方法中,哪一个是稳定的排序方法?(.下列排序方法中,哪一个是稳定的排序方法?( ) 【北方交通大学【北方交通大学【北方交通大学 2001 2001 2001 一、一、一、88(2分)】A .直接选择排序.直接选择排序B B B.二分法插入排序.二分法插入排序.二分法插入排序C C C.希尔排序.希尔排序.希尔排序D D D.快速排序.快速排序.快速排序6.若要求尽可能快地对序列进行稳定的排序,则应选(.若要求尽可能快地对序列进行稳定的排序,则应选(A A .快速排序.快速排序 B B B.归并排序.归并排序.归并排序 C C C.冒.冒泡排序)。
北京航天航空大学2000年数据结构试题

北京航天航空大学2000年数据结构试题
一、选择题(2’x10)
1. 在非空双向循环链表中q所指的结点前插入一个由p所指的链接点的过程依次为:rlink(p)←q;llink(p)←llink(q);llink(q)←p;_________。
(A)rlink(q)←p (B)rlink(llink(q))←p
(C)rlink(llink(p))←p (D)rlink(rlink(p))←p
2. 若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B 中,则在B中确定aij(i<j)的位置k的关系为_________。
(A) (B)
(C) (D)
3. 某堆栈的输入序列为a,b,c,d,下面的四个序列中,_________不可能是它的输出序列。
(A)a,c,b,d (B)b,c,d,a
(C)c,d,b,a (D)d,c,a,b
4. 深度为h的满m叉数的第k层有_________个结点。
(1≤k≤h)
(A)mk-1 (B)mk-1 (C)mh-1 (D)mh-1
5. 具有10个叶结点的二叉树中有_________个度为2的结点。
(A)8 (B)9 (C)10 (D)11
6. 要连通具有n个顶点的有向图,至少需要_________条边。
(A)n-1 (B)n (C)n+1 (D)2n。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北航2002年程序设计与数据结构试题一、简答题(10’)1. 数据结构课程是计算机专业的基础课还是专业课,或者专业基础课?(2’)2. 学习数据结构课程需要哪些课程作为它的基础(举例两门课程)?若没有这些知识,对学习数据结构课程可能会产生哪些影响?请举例说明(不超过100字)。
(4’)3. 数据结构课程将为那些课程学习奠定必要的基础?请举例说明哪些课程(举例两门课程)用到了数据结构课程的哪些知识(不超过100字)。
(4’)二、(5’)请推导出结论:具有0n 个叶结点的哈夫曼树(Huffman )的分支总数为02(1)n -。
三、单项选择题(2’×15)1. 线性链表中各链接点之间的地址________。
A. 必须连续B. 部分地址必须连续C. 不一定连续D. 连续与否无所谓2. 在非空线性链表中由p 所指的链接点后面插入一个由q 所致的链接点的过程是依次执行动作________。
A. link(q)←p; link(p)←q;B. link(q)←link(p); link(p)←q;C. link(q)←link(p); p ←q;D. link(p)←q; link(q)←p; 3. 在非空双向循环链表中由q 所指的那个链接点前插入一个p 指的链接点的动作对应的语句依次为rlink(p)←q, llink(p)←llink(q), llink(q)←p, ________。
(空白处为一条赋值语句) A. rlink(q)←p B. rlink(llink(q))←p C. rlink(llink(p))←p D. rlink(rlink(p))←p4. 在初始为空的堆栈中依次插入元素f, e, d, c, b, a 以后,连续进行了三次删除操作,此时栈顶元素是________。
A. c B. d C. b D. e5. 若某堆栈的输入序列为1, 2, 3, …, n ,输出序列的第1个元素为n ,则第i 个输出元素为________。
A. iB. n i -C. 1n i -+D. 哪个元素无所谓 6. 求字符串T 在字符串S 中首次出现的位置的操作称为________。
A. 求串的长度B. 求子串C. 串的模式匹配D. 串的连接7. 若一棵度为7的树有8个度为1的结点,有7个度为2的结点,有6个度为3的结点,有5个度为4的结点,有4个度为5的结点,有3个度为6的结点,有2个度为7的结点,该树一共有________个叶结点。
A. 35 B. 28 C. 77 D. 78 8. 若一棵二叉树有1001个结点,且无度为1的结点,则叶结点的个数为________。
A. 498B. 499C. 500D. 5019. 已知某完全二叉树采用顺序存储结构,结点数据信息的存放顺序依次为ABCDEFGH ,该完全二叉树的后序遍历序列为________。
A. HDEBFGCAB. HEDBFGCAC. HDEBAFGCD. HDEFGBCA 10. 若某带权图为(,)G V E =,其中12345678910{,,,,,,,,,}V v v v v v v v v v v =,1251362533563434534714845645726104{(,),(,),(,),(,),(,),(,),(,),(,),(,),(,),(,),E v v v v v v v v v v v v v v v v v v v v v v =7958929102(,),(,),(,)}v v v v v v (注:顶点偶对右下角的数据表示边上的权值),则G 的关键路径的长度为________。
A. 19B. 20C. 21D. 2211. 顺序查找法适合于存储结构为________的线性表。
A. 顺序存储结构或链式存储结构B. 散列存储结构C. 索引存储结构D. 压缩存储结构12. 当n 足够大时,在按值有序的顺序表中进行折半查找,当查找概率相等的情况下,其查找成功的平均查找长度是________。
A. 12n + B. 2nC. 2log (1)1n +-D. 2log (1)n +13. 下述命题中,不成立的应是________。
A. m 阶B 树中的每一个分支结点的子树的个数都小于或等于mB. m 阶B 树中的每一个分支结点的子树的个数都大于或等于2m ⎡⎤⎢⎥C. m 阶B 树中的任何一个结点的子树的高度都相等D. m 阶B 树中有k 个子树的分支结点包含1k -个关键字14. 已知散列范围为 [0..9],散列函数(哈希函数)为() MOD 9H key key =,处理冲突的方法为线性探测再散列法,依次插入关键字序列8, 18, 25, 44, 34, 21, 19, 23后的哈希表为________。
A.B.C.D.15. 在下述的排序方法中,不属于内排序方法的是________。
A. 插入排序法B. 选择排序法C. 拓扑排序法D. 归并排序法四、(15’)请设计一个时间复杂度为O (n ),空间复杂度不超过O (2) 的算法,该算法将数组A[0:1]n -中所有元素循环右移k 个位置。
五、(15’)已知某二叉树采用广义表形式作为输入,请写一非递归算法,建立该二叉树的二叉链表存储结构。
设该链接点构造为T 。
关于采用广义表形式表示二叉树的约定如下: 1)表中的一个字母表示一个结点的数据信息;2)每个根结点作为由子树构成的表的构成的表的名字放在表的前面;3)每个结点的左子树与右子树之间用逗号分开;若只有右子树而无左子树,则逗号不能省略;4)整个广义表的末尾由一个特殊符号 @ 作为表的结束标志。
例如:(A(B(D),C(F(,E),G))@表示某一棵二叉树,该二叉树的根结点数据信息为A。
其中,数据信息为F的结点只有右子树,而无左子树。
六、(1’×10)在下面给出的C函数实现中的空白处填上适当的内容,使其完成正确的功能。
函数说明:函数void ftoa(double f, char s[]) 将浮点数f转换成相应的字符串,并存放在s中,该函数最多只能转换小数点后四位,如123.45将转换成“123.45”,−123.456789将转换成“−123.4567”。
七、(15’)命令tail用来打印文件中最后n行。
命令格式为:tail [−n] filename其中:−n: 要打印的行数,当省略此参数时,n的缺省值为10。
filename: 文件名例如,命令tail −20 example.txt表示打印文件example.txt的最后20行。
请用C语言实现该程序,该程序应具有一定的错误处理能力,例如能处理非法命令参数和非法文件名。
提示1:使用命令行参数;提示2:可以使用下面的C库函数:·int atoi(char *s) 将数字串转换为相应整数;·fopen, fclose, printf, fprintf, exit;·fgets(char *s, int n, FILE *fp) 从文件中读入一行;·void *malloc(unsigned size), free申请和释放内存;·strlen计算字符串长度;·strcpy将一个字符串拷贝到另一个字符串中。
除此之外,不允许使用其它库函数。
北航2001年程序设计与数据结构试题一 、问答题(10’)一般情况下,线性表可以采用哪几种存储结构?请分别叙述每一种存储结构的构造原理与特点。
二、(10’)已知AOE 网为(,)G V E =,其中12345678910{,,,,,,,,,}V v v v v v v v v v v =,1234567891011121314{,,,,,,,,,,,,,}E a a a a a a a a a a a a a a =,其中:5211),(:a v v 6312),(:a v v 3523),(:a v v 3434),(:a v v 6535),(:a v v 3546),(:a v v1747),(:a v v4848),(:a v v4659),(:a v v27510),(:a v v410611),(:a v v 59712),(:a v v 29813),(:a v v 210914),(:a v v注:顶点偶对右下角的数字表示边上的权值。
ee[1:10] :le[1:10] :e[1:14] : l[1:14] : 其中,ee[i ] 与le[i ] 分别表示事件i v 的最早发生时间与最晚发生时间;e[i ] 与l[i ] 分别表示活动a i 的最早开始时间与最晚开始时间。
三、(10’)欲建立一文献库,其正文(文献本身)存放在一个双向循环链表的各个链接点中。
1. 为便于链接点的插入、删除操作,以及按题目、发表日期、发表者名称、主题词(假设每文最多给出三个主题词)进行检索,请设计该链表的链接点结构(给出链接点每个域的名称,并说明该域内存放什么信息。
注:以下各小题设计链结点结构也这样要求)。
画出整个链表结构的示意图。
2. 设计一个三级索引结构,其中第三级索引称为题目索引,示按文献题目构造的稠密索引,通过该级索引并根据给定题目可得到每个文献的存放地址;该级索引按文献学科类分类存放。
第二级索引称为中类索引,是题目索引的索引,指出同一中类的文献题目索引的存放位置(例如农林类、气象类…,古代史类,近代史类…)。
第一级索引称为大类索引,指出同一大类(如:自然科学类、历史类…)的文献的中类索引的存放位置。
请设计每一级索引的结点结构,并画出该索引的整体示意图。
3. 在设计一种三级索引结构,其中第三级索引仍是题目索引(与2题所述相同),第二级索引把具有相同主题词的文献题目索引地址组织在一个单链表中。
第一级索引称为主题词索引,用文献给出的主题词做关键字组成杂凑表,即该级索引为一个杂凑表,能够指出具有同一主题词的文献题目索引的索引链表的第一个链结点的存储位置。
该杂凑表采用链地址法处理冲突。
请设计每一级索引的结点结构,并画出该索引的整体示意图。
四、(10’)已知非空线性链表由list指出,链结点的构造为最小的那个链结点移至链表的最前面。
要求:不得额外申请新的链接点。
五、(5’+10’)已知求两个正整数m与n的最大公因子的过程用自然语言可以表述为反复执行如下动作:第一步:若n等于零,则返回m;第二步:若m小于n,则m与n相互交换;否则保存m,然后将n送m,将保存的m除以n的余数送n。
1)将上述过程用递归函数表达出来(设求x除以y的余数可以用x MOD y形式表示)。
2)写出求解该递归函数的非递归算法。