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?: 
Average: 10 (1 vote)
Ả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

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

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.
Image CAPTCHA
Enter the characters shown in the image.

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

 
Hướng dẫn đơn giản Entity Data API cho Module Builders

Hướng dẫn đơn giản Entity Data API cho Module Builders

Fields are a powerful way to add data to Drupal entities. However, sometimes fields can be rather cumbersome.

www.Ahrefs.com - Công cụ đánh giá đối thủ và quản lý backlink

www.Ahrefs.com - Công cụ quản lý backlink

Theo dõi đối thủ, quản lý backlink là một phần quan trọng trong SEO, sau đây dịch vụ seo  của chúng tôi  xin hướng dẫn các bạn sử dụng công cụ theo dõi đối thủ và quản lý backlink bằng tool Ahrefs.com

Yu Pan là đồng sáng lập PayPal

12 khai quốc công thần của YouTube giờ đang làm gì?

Hiện tại, ông đã rời công ty và chuyển sang làm kỹ sư phần mềm cho Origin Protocol - doanh nghiệp được sáng lập bởi cựu nhân viên YouTube Matthew Liu

Công ty diệt chuột T&C

 

Diet con trung