A ferramenta essencial desse curso é o pacote de software Stanford GraphBase. O pacote está extremamente bem documentado no livro
Donald E. Knuth, The Stanford GraphBase: A Platform for Combinatorial Computing, ACM Press e Addison-Wesley, 1993.
Veja o extended abstract que descreve o livro e o software. Veja minha página sobre o SGB. Veja também o que Steven Skiena diz do Stanford GraphBase no Stony Brook Algorithms Repository. Veja também as novidades sobre o SGB.
Um livro de espírito semelhante ao SGB:
Robert Sedgewick, Algorithms in C, Part 5: Graph Algorithms, 3rd.ed., Addison Wesley, 2002.
As figuras são excelentes mas a organização do texto deixa a desejar. O código dos programas tem um lamentável defeito: a documentação não diz o que cada função faz. Para algumas estruturas de dados, pode ser útil consultar
Robert Sedgewick, Algorithms in C, 3rd. edition, Parts 1-4, Addison Wesley Longman, 1998.
Não é um livro de teoria dos grafos,
mas tem dois capítulos sobre o assunto.
Há uma edição em português
mas a tradução não é boa
(loop invariante
no lugar de loop invariant
e outras bobagens).
Se você quer uma atitude menos algorítmica, veja os textos