Thuật toán tìm tất cả các danh sách lân cận 2 hop trong biểu đồ


8

Cho đồ thị , trong đó . Một thuật toán nhanh chóng để tạo ra bộ sưu tập của tất cả các danh sách hàng xóm 2-hop của tất cả các nút trong là gì .G= =(V,E)|V|= =nV

Ngây thơ, bạn có thể làm điều đó trong . Với sức mạnh của ma trận, bạn có thể làm điều đó với bằng thuật toán Strassen. Bạn có thể làm tốt hơn thế này bằng thuật toán nhân ma trận khác. Phương pháp nào tốt hơn? Bất kỳ thuật toán Las Vegas?Ôi(n3)Ôi(n2,8)


Có một thuật toán xác định O (n ^ 2).
Mike G

@MikeG làm thế nào để làm điều đó?
AJed

4
@MikeG đã tìm thấy một thuật toán nhân ma trận thời gian bậc hai kỳ diệu mà không may là quá nhỏ để phù hợp với một nhận xét stackexchange
Sasho Nikolov

@SashoNikolov Bạn có thể cho một tài liệu tham khảo?
Raphael

Câu trả lời:


15

Câu hỏi thực sự phụ thuộc vào định nghĩa chính xác của 2-hop là gì. Nếu bằng 2-hop bạn có nghĩa là tập thì câu trả lời hiện nay là không có, bạn không thể làm điều đó nhanh hơn O ( n ω ) nơi ω là hằng số thường gắn liền với sự phức tạp của việc thực hiện sản phẩm ma trận.

hp(v)= ={bạn|có một đường dẫn có độ dài 2 giữa u và v},
Ôi(nω)ω

Tại sao? Với mọi đỉnh kiểm tra xem v có kề với đỉnh trong h p ( v ) không . Nếu đây là trường hợp thì bạn đã tìm thấy một hình tam giác trong biểu đồ của bạn. Ngoài ra, biểu đồ là tam giác miễn phí nếu bạn không tìm thấy đỉnh v với thuộc tính này.vvhp(v).v

Thuật toán hiện nổi tiếng nhất để thử nghiệm nếu đồ thị là tam giác-miễn phí có thời gian phức tạp Ôi(nω).


Thật thú vị, bạn có một tài liệu tham khảo cho vấn đề nhận dạng không có tam giác. Có một giới hạn thấp hơn đã được chứng minh cho vấn đề này?
AJed

3
Ôi(nω)Ôi(nω)

Neat, vui vì nó đã giúp!
Jernej
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.