一.1.C 2.B 3.B 4.A 5.C 6.A 7.B 8.A 9.D 10.C 11.D 12.A 13.A 14.C 15.D 16.D 17.C 18.C 19.C 20.D
二.1.r=f,(r+1)%m=f
2. 从任一结点出发可以遍历链表中的所有结点.
3. 单右支二叉树或孤立结点
4. 值均匀分布于表空间以减少冲突, 函数尽可能简单以方便计算
5. 入度
6. 冒泡排序
7. 1
8.n
三.1.f 2.t 3.t 4.f 5.f 6.f 7.f 8.t 9.t 10.f
四.1.
2.(v1,v6,v5,v3,v8)
3.
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
|
01 |
14 |
55 |
27 |
68 |
19 |
20 |
84 |
|
|
|
|
|
|
|
五.1.(1)P->next=NULL (2)Q.rear->next=P? (3)Q.rear=P;
(4)InorderTraverse(T->lchild (5)InorderTraverse(T->rchild
2.
Void mattolist(AdjMaxix a, AdjList *&G)
{int i,j,n;
n=a.n;
ArcNode *p;
For (i=0;i<n;i++)
G[i]->firstarc=NULL;
For (i=0;i<n;i++)
For (j=n-1;j>=0;j--)
If (a.edges[i][j]!=0)
{ p=(ArcNode *)malloc(sizeof(ArcNode));
p->adjvex=j;
p->nextarc=G[i]->firstarc;
G[i]->firstarc=p;
}
}