1淮 海 工 学 院 2009 - 2010 学年 第 1 学期 数据结构期中试卷 ( 闭卷)题号一二三四五六七八九总 分得分一、单项选择题(本大题共12 小题,每小题 2 分,共 24 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。选错、多选或未选均无分。1.按值可分解,数据类型通常可分为两类,他们是【C 】A.静态类型和动态类型B. 原子类型和表类型C.原子类型和结构类型D. 数据类型和指针类型2. 对 于 三 个 函 数f(n)=2008+8+96000 , g(n)=8+8n+2008 和h(n)=8888nlogn+3n2,下列陈述中不成立的是【C 】A. f(n) 是 O(g(n)) B. g(n)是 O(f(n)) C. h(n)是 O(n) D. h(n)是 O() 3.指针 p、q 和 r 依次指向某循环链表中三个相邻的节点,交换节点*q 和节点 *r 在表中的次序的程序段是【 A 】A. p->next=r; q->next=r->next; r->next=q; B. p->next=r; r->next=q; q->next=r->next; C. r->next=q; q->next=r->next; p->next=r; D. r->next=q; p->next=r; q->next=r->next; 4.若进栈次序为a ,b ,c,且进栈和出站可以穿插进行, 则可能出现的含个元素的出站序列个数是【B 】A.3 B.5 C.6 D.7 5.假设以数组 A[n] 存放循环队列的元素,其头指针front 指向队头元素的前一个位置、为指针rear 指向队尾元素所在的存储位置,则在少用一个元素空间的前提下, 队列满的判定条件为【D 】A.rear==front B. (front+1)%n==rear C. rear+1==front D.(rear+1)%n==front 6.串的操作函数 str 定义为:int str (char *s) { char *p=s; while (*p!= ’\0’) p++; return p-s; } 则 str(“abcde”)的返回值是【C 】A.3 B.4 C.5 D.6 7.二维数组 A[10][6] 采用行优先的存储方法, 若每个元素占 4 个存储单元,已知元素 A[3][4] 的存储地址为 1000,则元素 A[4][3] 的存储地址为【A 】A.1020 B.1024 C.1036 D.1240 8.对广义表 L=(a,())执行操作 tail(L) 的结果是【B 】A.() B.(()) C.a D.(a) 9.已知二叉树的中序序列和后序序列均为ABCDEF ,则该二叉树的先序序列为【 A】A. FEDCBA B. ABCDEF C. FDECBA D. FBDCEA 10.已知森林F={,,,,}, 各棵树(i=1,2,3,4,5)中所含节点的个数分别为 7,3,5,1,2,则与 F 对应的二叉树的右子树种的节点个数为【D 】A.2 B.3 C.8...