问答题数据结构是研讨数据的(1)和(2),以及它们之间的相互关系,并对与这种结构定义相应的(3),设计出相应的(4)。【西安电子科技大学1998二、2(3分)】
问答题给出KMP算法中失败函数f的定义,并说明利用厂进行串模式匹配的规则,该算法的技术特点是什么?【东南大学1993一、3(9分)1997一、2(8分)2001一、6(6分)】
问答题下面的排序算法的思想是:第一趟比较将最小的元素放在r[1]中,最大的元素放在r[n]中,第二趟比较将次小的放在r[2]中,将次大的放在r[n一1]中,依次下去,直到待排序列为递增序。(注:代表两个变量的数据交换)。【南京理工大学2001三、2(10分)】【中国海洋大学2007三(12分)】
void sort(SqList
if(max!=n-i+1]
{if((5) )r[min](一一>r In—i+1];else((6)};}
i++;
}
}//sort
问答题图的深度优先遍历和广度优先遍历各采用什么样的数据结构来暂存顶点?当要求连通图的生成树的高度最小,应采用何种遍历?【吉林大学2007二、7(3分)】
问答题若x和y是两个采用顺序结构存储的串,编写一个比较两个串是否相等的函数。【中国航天科研机构2005六(7分)】
问答题使用散列函数: H(k)=3k mod 11
并采用开放地址法处理冲突,所求下一地址函数为 d1=H(k)
di=(di-1+((7k mod 10)+1)%11(i=2,3,…)
试在0~10的散列地址空间中对关键字序列(22,41,53,46,30,13,01,67)构造哈希表,求等概率情况下查找成功的平均查找长度,并设计构造哈希表的完整的算法。
问答题有一幅如图所示的藏宝图,设计一个算法要求从入口到出口,必须经过“食品”和“财宝”的地方,不得经过“强盗”的地方。
问答题线性表的双向链表的存储结构为: Typedef struct DNode{ TElem info; structDNode*left; struct DNode*right; };并假设己建立头指针为head的双向链表,p指向其中某个结点,写一个程序段,从该循环链表中删除p所指向结点的前一个结点(假设该结点存在)。【华南理工大学2005二、1(4分)】
问答题下面给出一个排序算法,数组a[]是存放待排序数据元素的数组,n是数组大小,数据元素的数据类型是DataType。
void unknow(DataType a[],int n){
int high=n-1,i,j;DataType w;
while(high>0){
j=0;
for(i=0;i<high;i++)
if(a[i]>a[i+1]){
w=a[i];a[i]=a[i+1];a[i+1]=w;
j=i;
}
high=j;
}
}
问答题高度为K的完全二叉树至少有——个叶子结点。【合肥工业大学1999二、6(2分)】
问答题采用链接表存储结构,编写一个判别无向图中任意给定的两个顶点之间是否存在一条长度为k的简单路径算法。【中国海洋大学2005九(18分)】
问答题区分循环队列的满与空,只有两种方法,它们是__________和__________。【北京邮电大学200l二、2(4分)】
问答题假设二叉树T中至多有一个结点的数据域值为x,试设计一个算法拆开以该结点为根的子树,使原二叉树分成两棵二叉树。
问答题设一个双端队列,元素进入该队列的次序为a,b,c,d。求既不能由输入受限的双端队列得到,又不能由输出受限的双端队列得到的输出序列。【中山大学1999一、4(3分)】
问答题设m×n阶稀疏矩阵A有t个非零元素,其三元组表表示为LTMA[t+1),1..3],试问:非零元素的个数t达到什么程度时用LTMA表示A才有意义?【北京航空航天大学1998一、5(4分)】
问答题试将下列递归过程改写为非递归过程。【北京轻工业学院2000年】void test(int &sum) { int x; scanf(”%d,x); 1t(x=0) sum=0; else{ test(sum); Sum+=X; } printf(“%d”,sum); }
问答题计算起始二进制地址为011011110000,长度为4(十进制)的块的伙伴地址是多少?【中山大学1999一、2(3分)】
问答题已知二叉树以二又链表存储,编写算法完成:对于树中每一个元素值为x的结点,删去以它为根的子树,并释放相应的空间。【北京工商大学1998二(14分)】
问答题执行顺序查找时,储存方式可以是(1),二分法查找时,要求线性表(2),分块查找时要求线性表(3),而散列表的查找,要求线性表的存储方式是(4)。【山东大学1998一、1(3分)】
问答题8086/8088CPU的最大寻址范围是多少?是怎样实现对整个地址空间寻址的?
