Hi. A very good book for understanding graphs is:
R. Ahuja, T. Magnanti, J. Orlin, Network Flows: Theory, Algorithms, and Applications, Prentice-Hall, 1993
I've used this book in the past, but I am afraid I don't remember much now. I think that the Dijkstra algorithm doesn't work with negative edges, whereas the Prim alg. and the Kruskal's algorithm work with negative edges. Also, I don't think there is any limitation for all 3 first algorithms for the case where the graph is one alone cycle.