知识大全 全国2013年1月数据结构试题

Posted 结点

篇首语:如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 全国2013年1月数据结构试题相关的知识,希望对你有一定的参考价值。

  第一部分 选择题 (共 分)

  一 单项选择题(本大题共 小题 每小题 分 共 分)

  在每小题列出的四个备选项中只有一个是符合题目要求的 请将其代码填写在题后的括号内 错选 多选或未选均无分

   数据元素及其关系在计算机存储器内的表示 称为数据的( )

  A 逻辑结构 B 存储结构 C 线性结构 D 非线性结构

   某带头结点的单链表的头指针为head 判定该链表为非空的条件是( )

  A head==NULL B head >next==NULL C head!=NULL D head >next!=NULL

   导致栈上溢的操作是( )

  A 栈满时执行的出栈 B 栈满时执行的入栈

  C 栈空时执行的出栈 D 栈空时执行的入栈

   设数组A[m]为循环队列Q的存储空间 front为队头指针 rear为队尾指针 则判定Q为空队列的条件是( )

  A (rear front)%m= = B front= =rear

  C (rear front)%m= =m D front= =(rear+ )%m

   假设S=″I AM A STUDENT″ 则运算substr(S )的结果为( )

  A ″M A S″ B ″M A STUD″ C ″A STUDEN″ D ″STUD″

   在执行简单的串匹配算法时 最坏的情况为每次匹配比较不等的字符出现的位置均为( )

  A 模式串的最末字符 B 主串的第一个字符

  C 模式串的第一个字符 D 主串的最末字符

   从广义表L=(((d) c d))中分解得到(d)的操作为( )

  A head(head(head(L))) B head(tail(head(L)))

  C tail(head(head(L))) D tail(tail(head(L)))

   假设一棵完全二叉树按层次遍历的顺序依次存放在数组BT[m]中 其中根结点存放在BT[ ] 若BT[i]中的结点有左孩子 则左孩子存放在( )

  A BT[i/ ] B BT[ *i ] C BT[ *i] D BT[ *i+ ]

   右图所示二叉树的中序序列是( )

  A DHEBAFIJCG B DHEBAFJICG C DBHEAFCJIG D DBHEAFJICG

   连通图是指图中任意两个顶点之间( )

  A 都连通的无向图 B 都不连通的无向图

  C 都连通的有向图 D 都不连通的有向图

   下图所示带权无向图的最小生成树的权为( )

  A B C D

   对记录序列( )依次按个位和十位进行两趟基数排序之后所得结果为( )

  A B

  C D

   在待排关键字序列基本有序的前提下 效率最高的排序方法是( )

  A 直接插入排序 B 快速排序 C 直接选择排序 D 归并排序

   在下列各棵二叉树中 二叉排序树是( )

   采用ISAM或VSAM组织的文件是( )

  A 索引非顺序文件 B 顺序文件 C 索引顺序文件 D 散列文件

  第二部分 非选择题 (共 分)

  二 填空题(本大题共 小题 每小题 分 共 分)

  请在每小题的空格中填上正确答案 错填 不填均无分

   在一个长度为n的循环链表中 删除其元素值为x的结点的时间复杂度为______

   已知指针p指向某单链表中的一个结点 则判别该结点有且仅有一个后继结点的条件是______

   如果入栈序列是 … 且出栈序列的第一个元素为 则出栈序列中第 个元素为______

   已知广义表LS为空表 则其深度为______

   假设以行优先顺序存储三维数组A[ ][ ][ ] 其中元素A[ ][ ][ ]的地址为 且每个元素占 个存储单元 则A[ ][ ][ ]的地址是______

   已知一棵二叉树的先序序列为ABCD 中序序列为BCAD 则它的后序序列为______

   在含n个顶点的连通图中 任意两个不同顶点之间的一条简单路径最多包含______条边

   对关键字序列( )进行直接插入排序 当将第 个关键字 插入到当前的有序子表中时 为寻找插入位置需进行______次关键字之间的比较

   对有序表进行二分查找的过程可用判定树来描述 其判定树的形态只取决于______

   将有序表中n个元素依次插入到一棵空的二叉排序树中 则在等概率查找的情况下 该二叉排序树在查找成功时的平均查找长度是______

  三 解答题(本大题共 小题 每小题 分 共 分)

   ( )写出右侧图形表示的广义表L

  ( )画出其表头与表尾均为(a (b c))的广义表L 的图形表

  ( )

  ( )

   试推导一棵满k叉树上的叶子结点数a与非叶子结点数b之间满足以下关系

  a=(k )b+

   假设用迪杰斯特拉(Dijkstra)算法求下列图中从顶点a到其余各顶点的最短路径 按求解过程依次写出各条最短路径及其长度

   已知关键字序列在R[ ]中的初始状态为

  R

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  写出在将它调整为大根堆的过程中每一次筛选后R的状态

  四 算法阅读题(本大题共 小题 每小题 分 共 分)

   如果希望循环队列中的向量单元都能得到利用 则可设置一个标志域tag 每当尾指针和头指针值相同时 以tag的值为 或 来区分队列状态是 空 还是 满 请对下列函数填空 使其分别实现与此结构相应的入队列和出队列的算法

  int EnQueue(CirQueue *Q DataType x)

  if( ( ) ) return ;

  Q >data[Q >rear]=x;

  Q >rear=(Q >rear+ )% MAXQSIZE

  ( )

  return ;

  

  int DeQueue(CirQueue *Q DataType *x)

  if( ( ) ) return ;

  *x=Q >data[Q >front];

  Q >front= ( ) ;

  ( ) ;

  return ;

  

  ( )

  ( )

  ( )

  ( )

  ( )

   已知具有n个结点的完全二叉树采用顺序存储结构存储在向量BT[ n]中 结点的数据元素为字符类型 请阅读下列算法 并回答问题

  ( )假设向量BT中的内容为

  BT

  A

  B

  C

  D

  E

  F

  

  

  

  

  

  

  写出执行f (BT )后的输出结果;

  ( )说明该算法的功能

  void f (char BT[] int n)

   int i= ;

  while(i> )

  if(i<=n)

  printf(″%c″ BT[i]);

  i=i* ;

  else

  do i=i/ ; while(i% );

  if(i> ) i++;

  

  

  ( )

  ( )

   设数组f的初始元素序列为

  f[ ]=( )

  阅读下列算法 并回答问题 其中算法f 中调用的函数swap(a b)用以完成交换a和b的值

  ( )写出执行f (f )之后f[ ]中的元素序列 并写出在执行过程中调用swap函数的次数

  ( )简述算法f 的功能

  void f (int f[] int n int x int y)

  int i= j= k=n;

  while (j<=k)

  if (f[j]==y)j++;

  else if (f[j]==x)

   swap(f[i] f[j]);i++;j++;

  else swap(f[k] f[j];k ;

  

  ( )

  ( )

   下列算法利用二分查找方法在有序表r中插入元素x 并保持表r的有序性 其中参数*n为表r的长度 请在空缺处填入合适的内容 使其成为一个完整的算法

  void BinInsert(SeqList r int *n DataType x)

   int low= high=*n mid i;

  while(low<=high)

   mid= ( ) ;

  if (x key

  else (2) ;

  

  for(i=*n; (3) ;i--)

  r[i+1]=r[i];

  (4) ;

  *n++;

  

  (1)

  (2)

  (3)

  (4)

  五、算法设计题(本题共10分)

  34.假设一元多项式以循环链表表示,链表的结点结构为:

  typedef struct PNode

  float coef; //系数

  int exp; //指数

  struct PNode *next;

  *LinkList;

  现需要将一个用循环链表h表示的代数多项式拆分成两个多项式循环链表h1和h2,其中h1仅含多项式的奇次项,h2仅含多项式的偶次项。.wiNgwIT.Com要求利用原链表中的结点构成链表h1和h2。例如多项式7x8+5x3-4x的循环链表为

  经拆分之后的情况应是:

  请编写完成上述拆分的算法,并进行算法分析。

cha138/Article/program/sjjg/201311/23380

相关参考

知识大全 全国2013年1月高等教育自学考试数据结构试题

  一单项选择题(本大题共小题每小题分共分)  在每小题列出的四个备选项中只有一个是符合题目要求的请将其代码填写在题后的括号内错选多选或未选均无分  在数据结构中数据的逻辑结构可以分成(   )  A

知识大全 全国2013年1月高等教育自学考试数据结构导论试题

  一单项选择题(在每小题的四个备选答案中选出一个正确答案并将正确答案的序号填在题干的括号内错选多选或未选均无分每小题分共分)  下列数据结构中()不都是线性结构  A栈和队列  B队列和数组  C数

知识大全 全国2013年10月高等教育自学考试数据结构导论试题

全国年月高等教育自学考试数据结构导论试题课程代码一单项选择题(本大题共小题每小题分共分)在每小题列出的四个备选项中只有一个是符合题目要求的请将其代码填写在题后的括号内错选多选或未选均无分数据的基本单位

知识大全 全国2013年10月高等教育自学考试数据结构试题 (答案)

一单项选择题(  B  )(  D  )(  A   )( 

知识大全 全国2013年10月高等教育自学考试数据结构试题

  一单项选择题(本大题共小题每小题分共分)  在每小题列出的四个备选项中只有一个是符合题目要求的请将其代码填写在题干的括号内错选多选或未选均无分  下列各式中按增长率由小至大的顺序正确排列的是() 

知识大全 2013年1月份全国高等教育自学考试数据结构试题

  一单项选择题(本大题共小题每小题分共分在每小题的四个备选答案中选出一个正确答案并将正确答案的序号填在题干的括号内)  下面程序段的时间复杂度是()  for(i=;i  for(j=1;j  A[

知识大全 2013年1月自考数据结构导论试题[1]

  一单项选择题(本大题共小题每小题分共分)  在每小题列出的四个备选项中只有一个是符合题目要求的请将其代码填写在题后的括号内错选多选或未选均无分  在数据结构中数据的基本单位是()  A数据项B数据

知识大全 2013年1月自考数据结构导论试题[3]

已知无向图G的邻接表如题图所示请画出该无向图并写出其按广度优先搜索时的访问序列其中nil表示空题图(图片点击下载)  四算法设计题(本大题共小题每小题分共分)  编写一个函数voidinsert(in

知识大全 2013年1月自考数据结构导论试题[2]

在一个具有n个顶点的无向图中要连通全部顶点至少需要的边数为()  AnBn  Cn+D若构造一棵具有n个结点的二叉排序树最坏的情况下其深度不超过()  ABn  CDn+  闭散列表中由于散列到同一个

知识大全 2013年10月自学考试数据结构试题参考答案

cha138/Article/program/sjjg/201311/23841