Inilah yang saya ketahui tentang masalah ketebalan dalam grafik tidak tertimbang yang tidak diarahkan. Pertama-tama, jika ketebalannya genap, Anda dapat menentukannya dalam waktu - ini adalah hasil lama dari Itai dan Rodeh (A. Itai dan M. Rodeh. Menemukan rangkaian minimum dalam grafik. SIAM J Computing, 7 (4): 413–423, 1978.). Idenya ada: untuk setiap simpul dalam grafik, mulai BFS sampai siklus pertama ditutup (kemudian berhenti dan pindah ke simpul berikutnya); kembalikan siklus terpendek yang ditemukan. Jika lingkar bahkan siklus terpendek ditemukan akan menjadi siklus terpendek. Khususnya jika grafik Anda adalah bipartit, ini akan selalu menghitung ketebalannya. Namun, jika ketebalan g aneh, Anda akan menemukan siklus panjang g atau g +O(n2)gg , jadi Anda mungkin libur 1 .g+11
Sekarang, masalah sebenarnya dengan ketebalan aneh adalah bahwa mau tidak mau algoritma Anda harus dapat mendeteksi jika grafik memiliki segitiga. Algoritma terbaik untuk itu menggunakan perkalian matriks: min { n 2.38 , m 1.41 ) waktu untuk grafik pada n node dan m edge. Itai dan Rodeh juga menunjukkan bahwa algoritma apa pun yang dapat menemukan segitiga dalam grafik padat juga dapat menghitung ketebalannya, jadi kami memiliki algoritma ketebalan waktu O ( n 2.38 ) . Namun, runtime untuk ketebalan dalam grafik jarang tidak sebagus untuk menemukan segitiga. Yang terbaik yang kita tahu secara umum adalah O ( mO(n2.38,m1.41)nmO(n2.38) . Secara khusus, apa yang tampaknya paling sulit adalah menemukanalgoritma waktu o ( n 2 ) untuk grafik dengan m = O ( n ) .O(mn)o(n2)m=O(n)
2n1+1/k2k. Jadi semakin padat grafiknya, semakin mudah untuk menemukan perkiraan yang baik untuk ketebalannya. Ketika grafik sangat jarang, ketebalannya bisa jadi besar secara sewenang-wenang.