- 若连通网络的各边的权值均不相同,则依据Prim算法所构造的最小生成树是唯一的。
-
(1)静态链表既有顺序存储的优点,又有动态链表的优点。所以,它存取表中第i个元素的时间与i无关。
(2)静态链表中能容纳的元素个数的最大数在表定义时就确定了,以后不能增加.
(3)静态链表与动态链表在元素的插入、删除上类似,不需做元素的移动。
以上错误的是() B。(1)错,(2)(3)对。静态链表是用数组存储节点数据,模拟链表的实现,但是没有用到指针。每个数组节点包括两部分:data域和cursor(游标)域。data存储数据,cursor指明下个元素在数组中的下标。(1)存取第i个元素时,需要从头遍历到i-1和元素,由第i-1个节点的cursor,才能知道第i个元素存储的位置,因此和i是相关的。(2)使用数组对元素进行存储,在定义时大小已经确定。(3)插入和删除操作无需移动元素,只需要修改cursor游标的值即可,就像修改动态链表中的指针一样。
- 已知有一个关键字序列:(19,14,23,1,68,20,84,27,55,11,10,79)散列存储在一个哈希表中,若散列函数为H(key)=key%7,并采用链地址法来解决冲突,则在等概率情况下查找成功的平均查找长度为()。答案:A
这些关键字除以7取余后分别得到5,0,2,1,5,6,0,6,6,4,3,2存储结构如下
位置--存储
0-----14-84 //14查找1次,84需要查找2次,以下类似
1-----1
2-----23-79
3-----10
4-----11
5-----19-68
6-----20-27-55
总查找次数为1+2+1+1+2+1+1+1+2+1+2+3=18
总共有12的关键字
平均查找次数为18/12=1.5
- 要保证连通具有10个顶点的无向图,至少需要()条边。 要保证连通具有10个顶点的无向图,重点是需要保证连通,则需要前面9个顶点两两相连,就能保证第10个顶点加入一条边就能保证连通。即:从9个节点中人任意选取两个节点连接,则需要C(9,2)条边,再加上最后一条边,则总边数为: C(9,2)+1=(9*8)/(1*2)+1=37
- 二叉排序中序遍历一定是有序的。
- http://blog.csdn.net/zhanghaotian2011/article/details/8459281 平衡二叉树。
- 栈是先进后出的数据结构,在整个过程中,栈底指针不变,入栈与出栈操作均由栈顶指针的变化来操作。
1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)
- 1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)
A,图的深度遍历是沿着一条路径走到头,然后再换另一条路径 图的广度遍历可以理解为层次遍历,按每层进行遍历,直到所有的点都被遍历完成 G是邻接表,然后根据深度遍历可以画出拓扑图,根据拓扑图可以得到其广度优先遍历
1、int(*p)[4];------ptr为指向含4个元素的一维整形数组的指针变量(是指针)2、int *p[4];-------定义指针数组p,它由4个指向整型数据的指针元素组成(是数组)3、int(*)[4];--------实际上可以看作是一种数据类型。也就是第一个(int(*p)[4];)