Considere una gráfica con vértices y grado máximo . Me gustaría saber si el gráfico tiene alguna camarillas, donde y ambas son pequeñas en comparación con . Solo necesito encontrar una sola camarilla (o certificar que no existe)
Hay una manera directa de hacer esto: para cada vértice , pruebe todos subconjuntos s de los vecinos de . El trabajo es por lo tanto .
¿Hay algoritmos más eficientes que este? ¿Incluso lograr una aceleración exponencial sería bueno?
graph-algorithms
David Harris
fuente
fuente
Respuestas:
Eppstein, Löffler, y Strash modificarse el algoritmo de Bron-Kerbosch, la obtención de un algoritmo que enumera todas las camarillas máxima en de tiempoO ( dn 3re/ 3) , donde es la degeneración del gráfico (nota )re re≤ Δ
La misma idea puede extenderse para el problema de la camarilla máxima en gráficos degeneradosre , y el tiempo de ejecución puede mejorarse a .O∗( 2re/ 4)
fuente