Thực hành Lý thuyết đồ thị - Biểu diễn đồ thị (P1)

Thực hành Lý thuyết đồ thị - Biểu diễn đồ thị (P1)

Xây dựng các hàm phục vụ cho việc tạo ma trận kề của đồ thị cần biễu diễn bằng ngôn ngữ C/C++, gồm có:

  • Nhập ma trận kề: Cho phép nhập thông tin về đồ thị bằng tay gồm số đỉnh N, các giá trị Ai,j của ma trận kề
  • Đọc ma trận kề từ file: Cho phép nhập thông tin về đồ thị từ file chứa các giá trị của ma trận kề gồm số đỉnh N, các giá trị Ai,j.
  • Xuất ma trận kề: In thông tin về đồ thị ở dạng ma trận kề gồm các giá trị Ai,j

Xem thêm phần 2 xây dựng thuật toán

>> Thực hành Lý thuyết đồ thị - Duyệt đồ thị (P2)

Source

#define MaxV 20 //Define su dung cho so dinh cuc dai cua do thi

int A[MaxV][MaxV];      //Ma tran ke

int V = 0;                          //So dinh cua do thi

int ChuaXet[MaxV];


//Thu tuc nhap matran ke bang ban phim.

void NhapMTKe(int A[][MaxV], int &V)

{

     printf("Nhap V:");

     scanf("%d", &V);

     for (int i=0; i<V; i++)

     {

                 for (int j=0; j<V; j++)

                 {

                             printf("A[%d,%d] = ", i+1, j+1);

                             scanf("%d", &(A[i][j]));

                 }

     }

}


// Xuat ket qua ma tran ke cua do thi ra man hinh.

void XuatMTKe(int A[][MaxV], int V)

{

     printf("\nMa tran ke:\n");

     for (int i=0; i<V; i++)

     {

                 for (int j=0; j<V; j++)

                             printf("%3d ", A[i][j]);

                 printf("\n");

     }

}


//Doc du lieu ma tran ke cua do thi da duoc tao thanh file text luu san tren dia.

int DocMTKe(char *fileName, int A[][MaxV], int &V)

{

     FILE *f = fopen(fileName, "rt");

     if (f == NULL)

     {

                 printf("Doc file loi !!!");

                 return 0;

     }

     fscanf(f, "%d", &V);

     for (int i=0; i<V; i++)

     {

                 for (int j=0; j<V; j++)

                 {

                             fscanf(f, "%d", &(A[i][j]));

                 }

     }

     return 1;

}
Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Bình luận (0)

 

Add Comment

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
11 + 4 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
How to Check Your Facebook Account is Hacked or Not

How to Check Your Facebook Account is Hacked or Not

Has Your Facebook Account Been Hacked? Today here we will let you know How to Check Your Facebook Account is Hacked or Not.

Drupal 7 Form API: Sử dụng #states cho multiple conditionals (AND, OR and XOR)

Drupal 7 Form API: Sử dụng #states cho multiple conditionals (AND, OR and XOR)

If you have a simple, one off case where you have a conditional field and are reluctant to introduce 2-3k lines of code, you can use hook_form_alter() and #states API.

Nguyễn Siêu Hạnh nhận giải thưởng của Liên Hiệp Quốc

Nguyễn Siêu Hạnh nhận giải thưởng của Liên Hiệp Quốc

Chàng trai 25 tuổi Nguyễn Siêu Hạnh, sinh viên năm cuối khoa Quản trị kinh doanh, Học viện UBI (Bỉ), vừa nhận giải thưởng World Summit Youth Award của Liên Hiệp Quốc vào tháng 11 vừa qua tại Áo.

Tomdesgin.vn

 

Drupal Services