A、从根节点开始,沿着树的宽度遍历树的节点。如果所有节点均被访问,则算法中止
B、常采用先进后出的栈来实现算法
C、空间的复杂度为O(V+E),因为所有节点都必须被储存,其中V是节点的数量,E是边的数量
D、时间复杂度为O(V+E),因为必须寻找所有到可能节点的所有路径,其中V是节点的数量,E是边的数量
选B。为了让先搜索结点的邻结点也先搜索,只能使用先进先出的队列的思想。宽度优先搜索算法常用于图。
3、在有序表(12,24,36,48,60,72,84)中二分查找关键字72时所需进行的关键字比较次数是多少?
A、1 B、2 C、3 D、4
选B。正确的二分查找应该是一次折半后,high=middle-1 或者 low=middle+1;所以第一次查找时 high=6,low=0; middle= 0+6/2 = 3,即48;第二次查找时 high=6, low =3+1; middle = 4+(6-4)/2 = 5,即72,查出所找关键字,故答案为B、2次
4、下面关于B-和B+树的叙述中,不正确的是
A、B-树和B+树都是平衡的多叉树
B、B-树和B+树都可用于文件的索引结构
C、B-树和B+树都能有效地支持顺序检索
D、B-树和B+树都能有效地支持随机检索
选C。B树的定义是这样的,一棵m阶的B树满足下列条件:(1)每个结点至多有m棵子树;(2)除根结点外,其他每个非叶子结点至少有m/2棵子树;(3)若根结点不是叶子结点,则至少有两棵子树;(4)所有叶结点在同一层上。B树的叶结点可以看成一种外部结点,不包含任何信息;(5)所有的非叶子结点中包含的信息数据为:(n,p0,k1,p1,k2,P2,…,kj-1,Pj-1)其中,ki为关键字,且满足kiki+1;pi为指向子树根结点的指针,并且Pi-1所指的子树中的所有结点的关键字均小于ki,Pj-1所指的子树中的所有结点的关键字均大于kj-1。B+树是应文件系统所需而出现的一种B树的变型树,其主要区别是一棵非叶子结点有n个子树就有n个关键字,这些关键字的作用是索引;所有的叶子结点包含了全部关键字的信息,以及指向这些关键字记录的指针,且叶子结点本身的关键字的大小自小而大顺序链接。从上述的特点中我们知道,这两种树都是平衡的多分树,它们都可以用于文件的索引结构,但B树只能支持随机检索,而B+树是有序的树,既能支持随机检索,又能支持顺序检索。