Hiểu được các mạch điện của thiên văn thiên văn bằng đồ họa

Một vòng quanh của hệ thống xen kẽ của người thư viện bèn là một đường đi đóng, đi qua mỗi cạnh của biểu đồ một lần và trở về đỉnh đầu. Khái niệm này bắt nguồn từ Bảy Cầu của Königberg nổi tiếng, do Leonhard kính thiên văn đi qua mỗi cạnh của đồ thị, và trở về trình bày chỉ khi mỗi đỉnh trên đồ thị có độ và đồ thị được kết nối (không có dấu chấm) kết nối. Điều này cơ bản đã đặt nền tảng cho lý thuyết và vẫn còn quan trọng trong việc phân tích mạng, thiết kế mạch điện tử, và tối ưu hóa các đồ thị.

Để chính thức nói: G [FLT: t là một đồ thị chưa được chỉ định. Một vòng quanh của người Lê - vi tồn tại nếu và chỉ khi mỗi đỉnh [FLT:] ) [FLT:] [FLT:] [FLT:] ] ], [V:5] có một đồ thị chưa được chỉ đạo. Một vòng tròn có khi mỗi đỉnh [FLT: 2] và chỉ nếu mỗi đỉnh [FT:6] [FT] [bằng phẳng] [bằng phẳng] [bằng phẳng] [FLT] có liên kết với các độ] [bằng phẳng] và các độ].

Thuật toán Hierholzer là gì?

Thuật toán này được xuất bản bởi nhà toán học người Đức Carl Hierholzer vào năm 1873, một phương pháp hiệu quả để xây dựng một vòng quanh của người dân ở vùng sông kính cẩn khi điều kiện cần thiết.

Quan niệm chính

  • Phát hiện hình cầu: bắt đầu từ đỉnh, theo các cạnh không dùng đến khi trở lại đỉnh đầu. Hình thành một chu kỳ đơn giản.
  • Khi một đỉnh trên các cạnh hiện tại vẫn còn bị bỏ hoang, một chu kỳ mới được hình thành từ đỉnh đó và được đưa vào vòng quanh.
  • Khi dùng cạnh để tránh xem lại chúng.

Mô tả thuật ngữ của Hierholzer

Thuật toán có thể được thực hiện theo cách đệ quy hoặc lặp lại ý tưởng cốt lõi là xây dựng một mạch điện bằng cách kéo dài các mạch phụ.

Bước 1: Chọn cách khởi động VEtex

Chọn bất kỳ đỉnh nào có ít nhất một cạnh. Vì đồ thị được kết nối và mọi độ đều bằng nhau, nên bất kỳ đỉnh nào cũng sẽ hoạt động. Thường thuật toán bắt đầu tại đỉnh [FLT: 0] [FLT: 1].

Bước 2: Pháo quay vòng

Từ đỉnh hiện thời, hãy theo bất kỳ cạnh không dùng đến người lân cận. Tiếp tục di chuyển dọc theo các cạnh không dùng, đánh dấu mỗi cạnh như đã dùng, cho đến khi bạn trở lại đỉnh. Tính năng này tạo một vòng [FLT: 0] c [FLT: 1]. Nếu chu kỳ chứa tất cả các cạnh của đồ thị, thuật toán sẽ chấm dứt — chúng ta có một vòng quanh của người dùng trong giao diện người dùng.

Bước 3: Tìm các vật dụng có cạnh không được sử dụng

Quét vòng quanh hiện thời cho bất kỳ vertex u mà vẫn còn có các cạnh không dùng. Nếu không, thuật toán đã hoàn thành. Nếu không, hãy ) u là một vertex như vậy.

Bước 4: Xây dựng một vòng quay mới từ u

Bắt đầu u , lặp lại quá trình tìm kiếm vòng lặp giữa các cạnh không dùng. Điều này tạo một vòng [FLT:] , bắt đầu và kết thúc tại [FLT:].

Bước 5: Nhập vòng tròn mới vào vòng quanh chính

Chèn . vào vòng quanh chính tại vị trí ). Kết quả là đi bộ vẫn là vòng quanh (ngập) và bao gồm tất cả các cạnh được thăm viếng cho đến nay. Hãy trở lại bước 3.

Vì mỗi đỉnh của đỉnh cao đều có độ thậm chí, nên quá trình này không bao giờ bị kẹt: mỗi khi bạn vào đỉnh, sẽ luôn luôn có một cạnh không dùng đến, cho đến khi bằng cấp của đỉnh đầu tiên trở thành số không.

Ví dụ: Xây dựng một mạch điện của thiên văn thiên văn

Hãy xem một biểu đồ chưa được chỉ định với các đỉnh A, B, C, D, và E. cạnh: AB, AD, BC, BD, CE, DE. (Đây là một biểu đồ nhỏ, mỗi đỉnh có độ A: deg(A), deg(B), deg) = 2, deD=3, deg(E), deg(E) = 1? Hãy dùng biểu đồ này để làm cho đúng một độ: AB, deg (B), deg(B), D, ABD, AD=3 và AD) = 3 chiều (v) = 1, 2 chiều ngang)?

Chạy thuật toán Hierholzer:

  • Hãy bắt đầu với vertex 1. Theo cạnh 1, 2- 3 (dùng), bây giờ ở 3. Chọn cạnh 3 (hãy dùng), 4 5, 5 gát - x3 (dùng). Hãy trở lại điểm đầu tiên là 1. Chưa trở lại 1. Chưa có kết quả. Thật ra thuật toán này cần phải tạo một vòng lặp để trở về với đỉnh đầu. Hãy bắt đầu thử lại, hãy bắt đầu với 1, 2, 2, 2, 3, 3, từ 3, chúng ta có thể đi 3 (không dùng đến 1. 1, 2. 1, 2, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 1, 3, 1, 1, 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 1, 1, 2, 2
  • Quét C1: vertex 3 có các cạnh không dùng. bắt đầu chu kỳ mới lúc 3: 3h4, 4h5, 5h3.
  • Kết quả là 1, 2, 2, 2, 3 - 3 - 4, tất cả các cạnh đều được dùng, vòng quanh là của người X-quang.

Ví dụ này minh họa sự tinh tế của thuật toán: Các chu trình được phát hiện và kết hợp một cách liên tục.

Sự phức tạp và lòng khoan khoái

Hierholzer + ) Thời gian ) khi dùng một danh sách phân phối và cấu trúc dữ liệu hiệu quả để loại bỏ cạnh (v.g, sử dụng nó, hoặc danh sách liên kết. Thuật toán này được tối ưu vì mỗi cạnh được xử lý một lần. Trí nhớ trên [FL: [FL: FL] [FL] [FL] [FT] [FT] [FT] [FT]] [FT] [FT]] [FT]] [FT]]] [FT]] [FT]] [V]] [V]] [V]] [V]] [V]] [V]] [V]]] [T]] [T]]] [T]] [T]]: 8] [T]]

Đối với đồ thị chỉ đạo, cách tiếp cận tương tự cũng được cung cấp cho biểu đồ là “theo độ ” của tác giả, tức là“ độ cao ” (theo độ của mỗi đỉnh).

So sánh với thuật ngữ của Fleury

Một thuật toán khác được biết đến để tìm mạch điện của Fleury là thuật toán , hoạt động bằng cách đi qua các cạnh, trong khi bảo đảm rằng biểu đồ còn lại [FLT:] [FL:] [FT:] [FLTT: 0] vì nó cần kiểm tra mỗi bước ) [FLT:] [thời gian tuyến tính] [FLT3] [FL:] [FL:] [FL:] [FT:] [FT:]] [FT:]], tránh cầu nối bằng cách dùng để kiểm tra lại. Tuy nhiên, thuật toán Hiererererer dùng để phân tách ra hai dấu chấm] và chỉ cần thiết một dấu chấm] trong khi vẽ đồ thị gần giống nhau, có thể xử lý một dấu chấm hai dấu chấm, dấu chấm, dấu chấm hai dấu chấm, dấu chấm hai dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, dấu chấm, theo dấu chấm, dấu chấm, và dấu chấm hai dấu chấm, theo dấu chấm,

Những ứng dụng của thuật toán Hierholzer

Khả năng tìm ra một mạch của người nhà kính có hiệu quả thật sự được sử dụng trong nhiều lĩnh vực của thế giới của người dân ở đó.

Vấn đề bưu điện Trung Quốc

Trong vấn đề Postman (sự thanh tra nhanh nhất), mục tiêu là tìm đường tắt nhất để bao phủ mọi cạnh, ít nhất là một lần.

Thiết kế mạch điện và y học mạng

Các mạch của người dùng trong việc thiết kế các tuyến đường hiệu quả cho người quét đường phố, bộ sưu tập rác và truyền tải các gói tin mạng nơi mỗi đường dẫn phải được đi qua một lần chính xác. Thuật toán giúp giảm thiểu việc đi lại dư thừa.

Hội nghị phân mảnh ADN

Trong ngành sinh học tính toán, biểu đồ de Bruijn tiếp cận với hội nghị gen tùy thuộc vào việc tìm ra các đường đi hoặc mạch của người dùng đồ thị kerholzer.

Thế hệ đồ họa máy tính và maze

Các đường mòn của thiên văn thiên văn được sử dụng trong việc tạo ra mê cung và trong đồ thị vẽ các thuật toán nơi các cạnh phải được vẽ mà không cần nâng bút. thuật toán cung cấp một cấu trúc tối ưu.

Thử ra mạch tích hợp

Trong thiết kế Rất lớn của bộ phận tích hợp (VLSI), thử nghiệm tất cả các kết nối có thể được mô hình hóa như một phong trào mạch điện của thiên văn, giảm thiểu sự vận động thử nghiệm.

Đọc thêm và ra ngoài tài nguyên

Để hiểu sâu hơn về các mạch điện của người sử dụng và thuật toán của Hierholzer, bạn nên có những tài nguyên sau đây:

Kết luận

Thuật toán Hierholzer là nền tảng của đồ thị liên kết với sự tao nhã, tốc độ và sự dễ hiểu rộng của nó. Bằng cách phân giải vấn đề này thành việc tìm kiếm và phối hợp các chu kỳ, nó cung cấp một giải pháp rõ ràng và tối ưu để thiết kế các mạch điện của thiên văn thiên văn; dù bạn đang thiết kế các tuyến tính, hay lắp ráp bộ gen, hoặc giải đố, hiểu được thuật toán này trang bị một công cụ mạnh mẽ để xử lý các đồ thị với cả các đỉnh cao, thời gian tuyến tính và cấu trúc đệ quy định, làm cho nó trở nên một trong số thuật toán được yêu thích và thực hiện.