Chúng ta cần phải thiết kế một số chương trình con

Một phần của tài liệu Cấu trúc cây, cấu trúc dữ liệu (Trang 31 - 35)

chúng ta cần phải thiết kế một số chương trình con

chúng ta cần phải thiết kế một số chương trình con

sau:

sau:

 Tạo cây rỗng MAKENULL_TREE(T) Tạo cây rỗng MAKENULL_TREE(T)

32void READTREE(Tree& T){ void READTREE(Tree& T){ void READTREE(Tree& T){ int i; int i; MAKENULL_TREE(T); MAKENULL_TREE(T);

//Nhập số nút của cây cho đến khi số nút nhập vào là hợp lệ

//Nhập số nút của cây cho đến khi số nút nhập vào là hợp lệ

do {

do {

printf("Cay co bao nhieu nut?");

printf("Cay co bao nhieu nut?");

scanf("%d",&T.MaxNode);

scanf("%d",&T.MaxNode);

} while ((T.MaxNode<1) || (T.MaxNode>MAXLENGTH));

} while ((T.MaxNode<1) || (T.MaxNode>MAXLENGTH));

printf("Nhap nhan cua nut goc ");

printf("Nhap nhan cua nut goc ");

fflush(stdin);

fflush(stdin);

scanf("%c",&T.Data[0]);

scanf("%c",&T.Data[0]);

T.Parent[0]=NULL; /* nut goc khong co cha */

T.Parent[0]=NULL; /* nut goc khong co cha */

for (i=1;i<=T.MaxNode-1;i++){

for (i=1;i<=T.MaxNode-1;i++){

printf("Nhap cha cua nut %d ",i);

printf("Nhap cha cua nut %d ",i);

scanf("%d",&T.Parent[i]);

scanf("%d",&T.Parent[i]);

printf("Nhap nhan cua nut %d ",i);

printf("Nhap nhan cua nut %d ",i);

fflush(stdin); fflush(stdin); scanf("%c",&T.Data[i]); scanf("%c",&T.Data[i]); } } } }

33

 Chương trình chính để thực hiện yêu cầu đề bài như sau:Chương trình chính để thực hiện yêu cầu đề bài như sau:

void main(){

printf("Nhap du lieu cho cay tong quat\n"); READTREE(T);

printf("Danh sach duyet tien tu cua cay vua nhap la\n"); PreOrder(ROOT(T),T);

printf("\nDanh sach duyet trung tu cua cay vua nhap la\n"); InOrder(ROOT(T),T);

printf("\nDanh sach duyet hau tu cua cay vua nhap la\n"); PosOrder(ROOT(T),T);

getch(); }

34

 Nhap du lieu cho cay tong quatNhap du lieu cho cay tong quat

 Cay co bao nhieu nut?10Cay co bao nhieu nut?10

 Nhap nhan cua nut goc ANhap nhan cua nut goc A

 Nhap cha cua nut 1 0Nhap cha cua nut 1 0

 Nhap nhan cua nut 1 BNhap nhan cua nut 1 B

 Nhap cha cua nut 2 0Nhap cha cua nut 2 0

 Nhap nhan cua nut 2 CNhap nhan cua nut 2 C

 Nhap cha cua nut 3 1Nhap cha cua nut 3 1

 Nhap nhan cua nut 3 DNhap nhan cua nut 3 D

 Nhap cha cua nut 4 1Nhap cha cua nut 4 1

 Nhap nhan cua nut 4 ENhap nhan cua nut 4 E

 Nhap cha cua nut 5 4Nhap cha cua nut 5 4

 Nhap nhan cua nut 5 FNhap nhan cua nut 5 F

 Nhap cha cua nut 6 4Nhap cha cua nut 6 4

 Nhap nhan cua nut 6 GNhap nhan cua nut 6 G

 Nhap cha cua nut 7 4Nhap cha cua nut 7 4

 Nhap nhan cua nut 7 HNhap nhan cua nut 7 H

 Nhap cha cua nut 8 2Nhap cha cua nut 8 2

 Nhap nhan cua nut 8 INhap nhan cua nut 8 I

 Nhap cha cua nut 9 2Nhap cha cua nut 9 2

 Nhap nhan cua nut 9 JNhap nhan cua nut 9 J

 Danh sach duyet tien tu cua cay Danh sach duyet tien tu cua cay vua nhap la

vua nhap la

 A B D E F G H C I JA B D E F G H C I J

 Danh sach duyet trung tu cua cay Danh sach duyet trung tu cua cay vua nhap la

vua nhap la

 D B F E G H A I C JD B F E G H A I C J

 Danh sach duyet hau tu cua cay Danh sach duyet hau tu cua cay vua nhap la

vua nhap la

35

Một phần của tài liệu Cấu trúc cây, cấu trúc dữ liệu (Trang 31 - 35)

Tải bản đầy đủ (PPT)

(71 trang)