- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
Việc liệt kê tất cả các đường đi đơn giản giữa hai đỉnh trong một đồ thị tùy ý thường mất thời gian theo cấp số nhân vì có thể có một số mũ các đường đi đơn giản giữa các đỉnh. Tuy nhiên, nếu chỉ xem xétđỉnhphải làm gì?
即:Cho một đồ thị vô hướng và hai đỉnh phân biệt, có thuật toán thời gian đa thức nào có thể tìm thấy mọi đỉnh nằm trên ít nhất một đường đơn giữa hai đỉnh không?Điều này không giống như kết nối; ngõ cụt và ngõ cụt bị loại trừ. Tuy nhiên, các đường dẫn phân nhánh và nối được cho phép.
Tôi thấy rất dễ dàng để viết một thuật toán dường như có thể giải quyết được vấn đề này, nhưng lại thất bại trong một số trường hợp hoặc mất thời gian chạy theo cấp số nhân trong các trường hợp bệnh lý.
Tổng quát hơn:Cho hai tập hợp đỉnh rời nhau trong một đồ thị, liệu có thuật toán thời gian đa thức nào có thể tìm thấy tất cả các đỉnh nằm trên một đường đi đơn giản từ tập hợp đỉnh này đến tập hợp đỉnh khác không?
(Hãy tha thứ cho tôi nếu có một giải pháp rất rõ ràng. Có vẻ như nên có.)
câu trả lời hay nhất
Đây là một giải pháp xác định thời gian tuyến tính.Chèn một cạnh vào giữa hai điểm cuối của bạn (hãy gọi chúng là a và b), nếu cạnh đó không tồn tại, bài toán của bạn sẽ chuyển sang dạng tìm giá trị lớn nhất nằm trên bất kỳ chu trình đơn nào đi qua a và b. Bài toán với tập đỉnh v. Bạn có thể tự thuyết phục mình rằng tập hợp như vậy tương ứng với đồ thị con lớn nhất chứa a và b và không thể bị ngắt kết nối bằng cách loại bỏ bất kỳ nút nào của nó (còn gọi là các thành phần được kết nối hai chiều). Trang nàyCác khái niệm của Hopcroft và Tarjan và thuật toán thời gian tuyến tính cổ điển (dựa trên DFS) được mô tả để xác định tất cả các thành phần được kết nối hai chiều (bạn chỉ cần các thành phần chứa a và b).
Bài toán thứ hai về đường đi đơn giản giữa hai tập hợp (hãy gọi chúng là A và B) có thể được rút gọn thành bài toán đầu tiên bằng cách tạo một đỉnh a mới với các cạnh tới tất cả các đỉnh trong A và A đỉnh b, các cạnh đến tất cả các đỉnh B, sau đó giải quyết vấn đề đầu tiên của bạn a và b.
Về thuật toán - tìm tất cả các đỉnh trên tất cả các đường dẫn đơn giản giữa hai đỉnh trong đồ thị vô hướng, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/10825249/
Tôi muốn sử dụng mê cung được hiển thị trong hình để tìm đường dẫn từ nút bắt đầu đến mục tiêu bằng cách sử dụng tìm kiếm đầu tiên theo độ sâu lặp lại. Nó là một tệp văn bản chỉ chứa một cặp số, chẳng hạn như kết nối theo cặp, còn được gọi là cạnh/cung. Như thế này: 11 3 2 3 0 3 1 4 5 4 5 7 6 7
Bài toán: Bạn có đồ thị vô hướng G = (V, E) (V = đỉnh, E = cạnh) và bạn phải đi thăm mọi đỉnh và đi qua mọi cạnh theo cả hai hướng. Các thuật toán đồ thị duy nhất mà tôi biết là DFS, BFS và một số MST (Kruskal, v.v.) Thật không may
Việc liệt kê tất cả các đường đi đơn giản giữa hai đỉnh trong một đồ thị tùy ý thường mất thời gian theo cấp số nhân vì có thể có một số mũ các đường đi đơn giản giữa các đỉnh. Nhưng điều gì sẽ xảy ra nếu chúng ta chỉ nhắm tới các đỉnh nằm trên ít nhất một đường đi đơn giản giữa hai đỉnh cuối? Nghĩa là: cho một đồ thị vô hướng và hai đồ thị khác nhau
Tôi đang phát triển một trò chơi opengl đơn giản để tìm hiểu thêm về nó. Nhưng vì lý do nào đó khi tôi cố gắng xoay khối lập phương của mình theo thời gian, nó bị giãn ra. Bạn có thể thấy nó trong ảnh: Tôi nghĩ nó có liên quan đến ma trận mô hình của tôi nhưng tôi không chắc
Tôi đã tìm kiếm trên Google trong một thời gian dài nhưng tôi không thể tìm thấy bất cứ điều gì. Làm cách nào để vẽ biểu đồ không có đỉnh được kết nối bằng Graphviz? Câu trả lời hay nhất là như thế này: chữ ghép g { SingleNode } đơn giản là không xác định được
Tôi hiện đang thực hiện một số phân tích mạng xã hội bằng gói "igraph" trong R và tôi tự hỏi liệu có cách nào để cá nhân hóa vị trí các nút trong mạng xã hội hay không. Ví dụ: sử dụng mã đồ chơi sau: Library(igraph) edg
Tôi có hình dạng đa giác trong Box2D. Hình dạng là một hình tam giác và tôi muốn nó có 3 đỉnh. Trong thực tế, tất cả các hình dạng tôi tạo ra đều có 8 đỉnh. Tại sao lại thế này? Nếu tôi xuất ra số đỉnh thì đó luôn là số chính xác. Tôi không muốn hiển thị những dòng không cần thiết, nhưng
Từ hướng dẫn sử dụng Lớp CGAL Surface_mesh: cấu trúc dữ liệu sử dụng các chỉ số nguyên làm mô tả cho chiều dọc
Tôi đang cố gắng tìm cách tham chiếu chỉ mục lưới ARFaceGeometry để đặt đồ họa lên các phần cụ thể của khuôn mặt bằng ARKit. Tôi đã thấy nhiều ví dụ trong đó các hàm được liên kết với một số số chỉ mục nhưng tôi không thể tìm thấy bất kỳ tài liệu tham khảo nào về danh sách này. Hình như có hơn 12
Apache TomCat (không xác định phiên bản) Đối tượng kinh doanh 4.1 Capstone 4.4.3 Trên một máy chủ, chúng tôi có TomCat và Đối tượng kinh doanh. APEX cũng sử dụng TomCat. đến của chúng tôi
Tôi đang thực hiện một số công việc bằng cách sử dụng MX Graph để giúp xác định các đường dẫn nội dung quan trọng trong trang web. Tôi thiết lập nó sao cho mỗi đỉnh đại diện cho một trang trên trang web và mỗi cạnh đại diện cho một nhóm khách truy cập từ trang A đến trang B. Mọi thứ đều hoạt động tốt ngoại trừ các cạnh quá nhiều và tôi
Tôi đang cố gắng vẽ một mặt phẳng bằng các dải hình tam giác. Tôi hiểu cách thực hiện việc này một cách thủ công, nhưng tôi thực sự gặp khó khăn khi thực hiện việc đó bằng vòng lặp for. Mã dưới đây vẽ hai hình tam giác cho đến nay. // các đỉnh của trian
Mình muốn lấy tên đỉnh theo id thì dùng hàm này: VAS(g, "name",id) Nhưng nếu muốn ngược lại thì lấy id theo tên thì phải làm thế nào? Câu trả lời hay nhất: bản thân igraph không cung cấp khả năng tìm các đỉnh theo tên.
Tôi có một hình tam giác có các đỉnh tùy ý nằm trong không gian 3D. Tôi biết rất dễ tìm được trọng tâm của một tam giác như vậy bằng cách: float centroid[3] = { 0, 0, 0 }; for (int i = 0; i =
Tôi có một loạt các điểm. Mỗi điểm có một vị trí (x, y, z) và một vectơ (xn, yn, zn), tổng cộng có 6 nhân đôi. Có tính đến dung sai dấu phẩy động, tôi cần tìm các phần tử duy nhất trong mảng này và loại bỏ các mục trùng lặp. Cách đơn giản để đạt được nó là
Tôi có một danh sách các cạnh (E) được kết nối với nhau, làm cách nào để tìm đường đi ngắn nhất nối đỉnh này với đỉnh khác? Tôi đã nghĩ đến việc sử dụng tổ tiên chung thấp nhất nhưng các cạnh không có gốc được xác định rõ ràng nên tôi không nghĩ giải pháp đó sẽ hiệu quả
Tôi hiện đang phát triển một hệ thống hạt bằng cách sử dụng các trình đổ bóng máy tính. Tôi đặt tất cả các hạt vào bộ đệm lưu trữ shader. Một hạt chứa hai đỉnh, vị trí hiện tại và vị trí trước đó. hạt cấu trúc{ glm::vec4 _currPo
Tôi cắt các đỉnh của mình trên các cạnh như minh họa trong album này: http://imgur.com/a/VkCrJ Khi kích thước địa hình của tôi là 400 x 400, tôi bị cắt, nhưng ở 40x40 hoặc nhỏ hơn, tôi không bị cắt xén. Đây là
Thực hiện các phép tính khó trong trình đổ bóng đỉnh có phải luôn tốt hơn là trình đổ bóng phân đoạn không? Ngay cả một mô hình lưới cao với hơn 100.000 đa giác (giả sử có nhiều đỉnh duy nhất)? CÂU TRẢ LỜI HAY NHẤT Không, không phải lúc nào cũng tốt hơn. Cách tốt nhất để chọn vị trí tính toán phù hợp là
Tôi muốn chỉnh sửa 1 đỉnh trên khối lập phương nhưng tôi không biết thực hiện như thế nào. Tôi đã thử tìm kiếm tính năng này ở mọi nơi nhưng không thể tìm ra giải pháp. Đây là hình ảnh về những gì tôi muốn đạt được: Câu trả lời hay nhất http://answers.unity3d.com/ques
Tôi là một lập trình viên xuất sắc, rất giỏi!