学开网

国开网100万+专项题库

使用积分解锁答案,让你的形成性考核不再困难。

访
未登录
当前积分 -
单选题

一组记录的关键字序列为(46,20,30,79,56,38,40,84,90,110),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为( )。

  • 40,20,30,38,46,56,79,84,90,110

  • 20,30,40,38,46,79,56,84,90,100

  • 30,20,40,38,46,84,56,79,90,100

  • 20,30 38,40,46,56,79,84,90,100

单选题

在有序表{10,14,34,43,47,64,75,80,90}中,用折半查找法查找值80时,经( )次比较后查找成功。

  • 4

  • 2

  • 3

  • 5

单选题

对序列(49,38,65,97,76,13,47,50)采用直接插入排序法进行排序,要把第七个元素47插入到已排序中,为寻找插入的合适位置需要进行( )次元素间的比较。

  • 3

  • 4

  • 5

  • 6

单选题

排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始为空)的一端的方法,称为( )排序。

  • 归并

  • 插入

  • 选择

  • 快速

单选题

一组记录的关键字序列为(26,59,36,18,20,25),利用堆排序的方法建立的初始小根堆为( )。

  • 26,18,59,20,36,25

  • 18,20,25,59,26,36

  • 18,20,36,59,26,25

  • 26,59,36,18,20,25

单选题

一组记录的关键字序列为(25,48,16,35,79,82,23,40,36,72),其中,含有5个长度为2的有序表,按归并排序的方法对该序列进行一趟归并后的结果为( )。

  • 16,25,35,48,23,40,79,82,36,72

  • 16,25,35,48,79,82,23,36,40,72

  • 16,25,48,35,79,82,23,36,40,72

  • 16,25,35,48,79,23,36,40,82,72

单选题

已知10个数据元素为(54,28,16,34,73,62,95,60,26,43),对该数列从小到大排序,经过一趟冒泡排序后的序列为( )。

  • 16,28,34,54,73,62,60,26,43,95

  • 28,16,34,54,62,73,60,26,43,95

  • 28,16,34,54,62,60,73,26,43,95

  • 16,28,34,54,62,60,73,26,43,95

单选题

一组记录的关键字序列为(46,79,56,38,40,84),利用快速排序,以第一个关键字为分割元素,经过一次划分后结果为( )。

  • 40,38,46,79,56,84

  • 40,38,46,56,79,84

  • 40,38,46,84,56,79

  • 38,40,46,56,79,84

单选题

一组记录的关键字序列为(80,57,41,39,46,47),利用堆排序(堆顶元素是最小元素)的方法建立的初始堆为( )。

  • 39,46,41,57,80,47

  • 39,47,46,80,41,57

  • 41,39,46,47,57,80

  • 39,80,46,47,41,57

匹配题

以下函数是二叉排序树的查找算法,若二叉树为空,则返回根结点的指针,否则,返回值是指向树结点的结构指针p(查找成功p指向查到的树结点,不成功p指向为NULL)完成程序中的空格

typedef struct Bnode

{ int key;

struct Bnode *left;

struct Bnode *right;

} Bnode;

Bnode *BSearch(Bnode *bt, int k)

/* bt用于接收二叉排序树的根结点的指针,k用以接收要查找的关键字*/

{ Bnode *p;

if(bt== __(1)__)

return (bt);

p=bt;

while(p->key!= __(2)__)

{ if(k<p->key)

__(3)__;

else __(4)__;

if(p==NULL) break;

}

return(__(5)__;

}

选项1
选项2
选项3
选项4
选项5