Voici ce que je sais du problème de la circonférence dans les graphiques non pondérés non dirigés. Tout d'abord, si la circonférence est paire, vous pouvez la déterminer en temps - c'est un ancien résultat d'Itai et de Rodeh (A. Itai et M. Rodeh. Trouver un circuit minimum dans un graphique. SIAM J Computing, 7 (4): 413–423, 1978.). L'idée est la suivante: pour chaque sommet du graphique, démarrer un BFS jusqu'à ce que le premier cycle soit fermé (puis s'arrêter et passer au sommet suivant); retourne le cycle le plus court trouvé. Si la circonférence est même le cycle le plus court trouvé sera le cycle le plus court. En particulier, si votre graphique est bipartite, cela calculera toujours la circonférence. Si la circonférence g est étrange, cependant, vous trouverez un cycle de longueur g ou g +O(n2)gg , vous pouvez donc être hors tension de 1 .g+11
Maintenant, le vrai problème avec la circonférence impaire est que votre algorithme devrait inévitablement être capable de détecter si le graphique a un triangle. Les meilleurs algorithmes pour cela utilisent la multiplication matricielle: temps min { n 2,38 , m 1,41 ) pour les graphes sur n nœuds et m bords. Itai et Rodeh ont également montré que tout algorithme qui peut trouver un triangle dans des graphiques denses peut également calculer la circonférence, nous avons donc un algorithme de circonférence temporelle O ( n 2,38 ) . Cependant, le temps d'exécution de la circonférence dans les graphiques clairsemés n'est pas aussi bon que celui pour trouver des triangles. Le mieux que l'on sache en général est O ( mO(n2.38,m1.41)nmO ( n2,38) . En particulier, ce qui semble le plus difficile est de trouver unalgorithme de temps o ( n 2 ) pour les graphes avec m = O ( n ) .O ( m n )o ( n2)m = O ( n )
Si vous vous souciez des algorithmes d'approximation, Liam Roditty et moi avons un article récent dans SODA'12 à ce sujet: Liam Roditty, V. Vassilevska Williams: Algorithmes d'approximation du temps sous-quadratique pour la circonférence. SODA 2012: 833-845. Là, nous montrons qu'une approximation peut être trouvée en temps sub-quadratique, et quelques autres résultats concernant les approximations et extensions additives. De manière générale, en raison d'un théorème de Bondy et Simonovits, lorsque vous avez des graphes denses, disons sur n 1 + 1 / k bords, ils contiennent déjà des cycles pairs courts, disons environ 2 k2n1 + 1 / k2 k. Ainsi, plus le graphique est dense, plus il est facile de trouver une bonne approximation de la circonférence. Lorsque le graphique est très clairsemé, la circonférence peut être essentiellement arbitrairement grande.