CU TRÚC D LIU VÀ GII THUT
1.
K[]={18,12,6,13,9,14,7,15,8,18,9,25,5,11,13,17} 16 phn t.
a. Trình by Bubble Sort sp xếp dãy khoá K[] theo th t tăng dn?
b. Áp dng,ghi kết qu mi bước.
2.
Cho đồ th vô hướng G=<V,E> thc hin
a. Biến đổi đồ th G dưới dng ma trn k.
b. Biến đổi đồ th G dưới dng danh sách cnh.
c. Biến đi đồ th dưới dng danh sách k.
3.
a. Định nghiã hàng đợi. Các thao tác trên hàng đợi.
b. Xây dng thut toán duyt các đỉnh cu đồ th vào hàng đợi.
c. Kim nghim thut toán bt đầu ti đỉnh u=5 và u=10 cho đ th được biu din dưới dng
ma trn k, ch rõ k các bước thc hin cu thut toán.
0100110000000
1000110000000
0001001000100
0010101100100
1101010000000
1100100000000
0011000100000
0001001000100
0000000001011
0000000010011
0011000100010
1
2
7
8
11
13
10
6
3
4
5
9
12
1
0000000011101
0000000011010
G=<V,E>
2
4.
a. Định nghĩa ngăn xếp; các thao tác ngăn xếp.
b. Xây dng thut toán duyt các đỉnh cu đồ th da vào ngăn xếp.
c. Kim nghim thut toán bt đầu ti đỉnh u=4 và u=13 cho đ th được biu din dưới dng
ma trn k hình. Ch rõ jết qu trung gian mi bước thc hin cu thut toán.
0100110000000
1000110000000
0001001000100
0010101100100
1101010000000
1100100000000
0011000100000
0001001000100
0000000001011
0000000010011
0011000100010
0000000011101
0000000011010
G=<V,E>
3
K THUT LP TRÌNH
1. Cho đon chương trình sau:
4
#include <stdio.h>
#include <conio.h>
int X[10], chuaxet[10], n, count;
void Int(void)
{
n=4;
count=0;
for (int i=1;i<=n;i++)chuaxet[i]=1;
}
void Result(void)
{
printf("\n Ket qua buoc %d: ",++count);
for (i=1;i<=n;i++)
printf("%3d",X[i]);
}
void Try(int i)
{
for (int j=1;j<=n;j++)
{
if(chuaxet[j])
{
X[i]=j;
chuaxet[j]=0;
if(i==n) Result();
else Try(i+1);
chuaxet[j]=1;
}
}
}
void main(void)
{
Int();
Try(1);
}
- Cho biết kết qu thc hin đon chương trình.
5