Saya memiliki satu set besar jaringan linear dan saya ingin menemukan dua ujung dari masing-masing jaringan yang paling jauh satu sama lain di sepanjang jaringan (pada gambar di bawah, itu akan menjadi D ke K). Solusi brute force untuk masalah ini adalah menghitung jalur terpendek di sepanjang jaringan untuk setiap pasangan asal, tetapi saya memiliki ratusan jaringan dengan ribuan ujung, sehingga menghitung setiap jalur yang mungkin cukup berat.
Apakah ada cara optimal untuk menghitung ini tanpa menggunakan brute force? Bisakah saya mengecualikan beberapa poin berdasarkan beberapa aturan pintar?
EDIT: Saya telah menambahkan ilustrasi jalur terpanjang yang disebutkan oleh @Alex Tereshenkov untuk memperjelas pertanyaan saya. Jalur hitam adalah hasil dari algoritma jalur terpanjang (jalur terpanjang tanpa mengulangi semua simpul). Dalam kasus saya, bayangkan Anda memasuki jaringan dari salah satu surat dan Anda harus pergi ke surat lain secepat mungkin. Dua surat mana yang paling sulit untuk diikuti?