graphs in this introduction to graphs searches minimum spanning trees graphs are one of the most versatile structures used in computer programming the sorts of problems that graphs can help to solve are generally quite different from those we've dealt with thus far in this book if you're dealing with general kinds of data storage problemsyou probably won' need graphbut for some problems--and they tend to be interesting ones-- graph is indispensable our discussion of graphs is divided into two in this we'll cover the algorithms associated with unweighted graphsshow some algorithms that these graphs can representand present two workshop applets to model them in the next we'll look at the more complicated algorithms associated with weighted graphs introduction to graphs graphs are data structures rather like trees in factin mathematical sensea tree is kind of graph in computer programminghowevergraphs are used in different ways than trees the data structures examined previously in this book have an architecture dictated by the algorithms used on them for examplea binary tree is shaped the way it is because that shape makes it easy to search for data and insert new data the edges in tree represent quick ways to get from node to node graphson the other handoften have shape dictated by physical or abstract problem for examplenodes in graph may represent citieswhile edges may represent airline flight routes between the cities another more abstract example is graph representing the individual topological sorting with directed graphs connectivity in directed graphs