• 数据结构与算法题库

若广义表L=((1,2,3)),则L的长度和深度分别为()

[单选题]若广义表L=((1,2,3)),则L的长度和深度分别为()A . 1和1B . 1和2C . 1和3D . 2和2

  • 查看答案
  • 算法好坏主要从()和()方面来衡量。

    [填空题] 算法好坏主要从()和()方面来衡量。

  • 查看答案
  • 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是__(1)__。从

    [单选题,共用题干题] 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是__(1)__。从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为__(2)__。设有1000个无序的元素,希望用最快的速度挑选出其中前10个最大的元素,最好选用__(3)__排序法。空白(1)处应选择()A .希尔排序B . 起泡排序C . 插入排序D . 选择排序

  • 查看答案
  • 设二维数组a[0…m-1][0…n-1]按列优先顺序存储在首地址为LOC(a[0

    [单选题]设二维数组a[0…m-1][0…n-1]按列优先顺序存储在首地址为LOC(a[0][0])的存储区域中,每个元素占d个单元,则a[i][j]的地址为()A . LOC(a[0][0])+(j×n+i)×dB . LOC(a[0][0])+(j×m+i)×dC . LOC(a[0][0])+((j-1)×n+i-1)×dD . LOC(a[0][0])+((j-1)×m+i-1)×d

  • 查看答案
  • 平衡树一定是丰满树。

    [判断题] 平衡树一定是丰满树。A . 正确B . 错误

  • 查看答案
  • 对于一棵具有n个结点的二叉树,对应二叉链表中指针总数为()个,其中()个用于指向

    [填空题] 对于一棵具有n个结点的二叉树,对应二叉链表中指针总数为()个,其中()个用于指向孩子结点,()个指针空闲着。

  • 查看答案
  • 中序遍历一棵查找树的结点就可得到排好序的结点序列。

    [判断题] 中序遍历一棵查找树的结点就可得到排好序的结点序列。A . 正确B . 错误

  • 查看答案
  • 已知树的前序遍历并不能唯一地确定这棵树,因为不知道树的根结点是哪一个。

    [判断题] 已知树的前序遍历并不能唯一地确定这棵树,因为不知道树的根结点是哪一个。A . 正确B . 错误

  • 查看答案
  • 某顺序存储的表格,其中有90000个元素,已按关键字递增有序排列,现假定对各个元

    [单选题,共用题干题] 某顺序存储的表格,其中有90000个元素,已按关键字递增有序排列,现假定对各个元素进行查找的概率是相同的,并且各个元素的关键字皆不相同。用顺序查找法查找时,平均比较次数约为__(1)__,最大比较次数为__(2)__。现把90000个元素按排列顺序划分成若干组,使每组有g个元素(最后一组可能不足g个)。查找时,先从第一组开始,通过比较各组的最后一个元素的关键字,找到欲查找的元素所在的组,然后再用顺序查找法找到欲查找的元素。在这种查找法中,使总的平均比较次数最小的g是__(3)__,

  • 查看答案
  • 在霍夫曼树中,叶结点的个数比内部结点个数多1。

    [判断题] 在霍夫曼树中,叶结点的个数比内部结点个数多1。A . 正确B . 错误

  • 查看答案
  • 将一棵有100个结点的完全二叉树从上到下、从左到右依次对结点进行编号,根结点的编

    [单选题]将一棵有100个结点的完全二叉树从上到下、从左到右依次对结点进行编号,根结点的编号为1,则编号为49的结点的左孩子编号为()A . 99B . 98C . 50D . 48

  • 查看答案
  • 一棵二叉树的结点数为18,则它的最小深度为(),最大深度为()。

    [填空题] 一棵二叉树的结点数为18,则它的最小深度为(),最大深度为()。

  • 查看答案
  • 用树的前序遍历和中序遍历可以导出树的后序遍历。

    [判断题] 用树的前序遍历和中序遍历可以导出树的后序遍历。A . 正确B . 错误

  • 查看答案
  • 最佳查找树就是检索效率最高的查找树。

    [判断题] 最佳查找树就是检索效率最高的查找树。A . 正确B . 错误

  • 查看答案
  • m阶B-树具有k个后继的非叶子结点含有k-1个键值。

    [判断题] m阶B-树具有k个后继的非叶子结点含有k-1个键值。A . 正确B . 错误

  • 查看答案
  • 用指针的方式存储一棵有n个结点的二叉树,最少要n+1个指针。

    [判断题] 用指针的方式存储一棵有n个结点的二叉树,最少要n+1个指针。A . 正确B . 错误

  • 查看答案
  • m阶B-树的任何一个结点的左右子树的高度都相等。

    [判断题] m阶B-树的任何一个结点的左右子树的高度都相等。A . 正确B . 错误

  • 查看答案
  • 霍夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。

    [判断题] 霍夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。A . 正确B . 错误

  • 查看答案
  • 对于一个具有n个元素序列如果采用快速排序,那么所需的最少比较次数是(),所需的最

    [填空题] 对于一个具有n个元素序列如果采用快速排序,那么所需的最少比较次数是(),所需的最大比较次数是(),且此序列为()序列。

  • 查看答案
  • 树的后序序列和其对应的二叉树的后序序列的结果是一样的。

    [判断题] 树的后序序列和其对应的二叉树的后序序列的结果是一样的。A . 正确B . 错误

  • 查看答案
  • 负载因子(装填因子)是散列法的一个重要参数,它反映散列表的装满程度。

    [判断题] 负载因子(装填因子)是散列法的一个重要参数,它反映散列表的装满程度。A . 正确B . 错误

  • 查看答案
  • 在查找树中插入一个新结点,总是插入到叶结点下面。

    [判断题] 在查找树中插入一个新结点,总是插入到叶结点下面。A . 正确B . 错误

  • 查看答案
  • 中序遍历二又链表存储的二叉树时,一般要用堆栈;中序遍历检索二叉树时,也必须使用堆

    [判断题] 中序遍历二又链表存储的二叉树时,一般要用堆栈;中序遍历检索二叉树时,也必须使用堆栈。A . 正确B . 错误

  • 查看答案
  • 在一个单链表head中,若要在指针p所指结点后插入一个q指针所指结点,则执行()

    [单选题]在一个单链表head中,若要在指针p所指结点后插入一个q指针所指结点,则执行()A . p->next=q->next;q->next=p;B . q->next=p->next;p=q;C . p->next=q->next;p->next=q;D . q->next=>next;p->next=q;

  • 查看答案
  • 对于一个具有n个结点的序列,如果采用插入排序,所需的最大比较次数是(),所需的最

    [填空题] 对于一个具有n个结点的序列,如果采用插入排序,所需的最大比较次数是(),所需的最大移动次数是()。

  • 查看答案
  • 将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是(),最多的比较次

    [填空题] 将两个各有n个元素的有序表归并成一个有序表,其最少的比较次数是(),最多的比较次数是()。

  • 查看答案
  • 判断线索二叉树中某结点P有左孩子的条件是__(1)__。若由森林转化得到的二叉树

    [单选题,共用题干题] 判断线索二叉树中某结点P有左孩子的条件是__(1)__。若由森林转化得到的二叉树是非空的二叉树,则二叉树形状是__(2)__。空白(2)处应选择()A .根结点无右子树的二叉树B . 根结点无左子树的二叉树C . 根结点可能有左子树和右子树D . 各结点只有一个孩子的二叉树

  • 查看答案
  • 给定结点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典

    [单选题,共用题干题] 给定结点的关键字序列(F,B,J,G,E,A,I,D,C,H),对它按字母的字典顺序进行排列,采用不同方法,其最终结果相同,但中间结果是不同的。Shell排序的第一趟扫描(步长为5)结果应为__(1)__。冒泡排序(大数下沉)的第一趟冒泡的效果是__(2)__。快速排序的第一次扫描结果是__(3)__。二路归并排序的第一趟结果是__(4)__。若以层次序列来建立对应的完全二叉树后,采用筛选法建堆,其第一趟建的堆是__(5)__。空白(1)处应选择()A .(B,F,G,J,A,D,

  • 查看答案
  • 链表中为什么要引入头结点?

    [问答题] 链表中为什么要引入头结点?

  • 查看答案
  • 若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用__(1)__算法,

    [单选题,共用题干题] 若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用__(1)__算法,因为__(2)__。空白(1)处应选择()A .先递归后递推B . 先递推后递归C . 递归D . 递推

  • 查看答案