13,594,789 members
See more:
I need to write a method to find the count of 4 cycles(cycles containing 4 edges) in an undirected graph. Please give me some advices if you have any idea about the algorithm.
Posted 1-Feb-13 2:43am
Andreas Gieriet 2-Feb-13 6:10am

Why do you add a solution to your own questions. Use [Improve question] button here above and [x] delete your solution below.
Andi

## Solution 1

See Robert Sedgewick[^]'s book list: Part 5: Graph Algorithms is the book to read (you choose: C, C++, Java). It would be a nice exercise if you write all the code of the book in C#. ;-)
Cheers
Andi
v4
venera_soft 2-Feb-13 2:06am

Thanks, will try :)

## Solution 2

I have done this myself. The algorithm uses DFS. And on every step it goes 4 levels and finds if the found vertex is the same as the one for which is done the step. In formal language it should be something like this:

```for path in dfs(start=node, max_depth=4):
if len(path) == 4 and path[1] == path[4]:
output.append(path)```

Top Experts
Last 24hrsThis month
 OriginalGriff 460 CPallini 205 Richard MacCutchan 198 Jochen Arndt 175 Thaddeus Jones 155
 OriginalGriff 4,300 Jochen Arndt 2,517 ppolymorphe 1,914 Maciej Los 1,851 Thaddeus Jones 1,698

Web04-2016 | 2.8.180621.3 | Last Updated 2 Feb 2013