Chapter 1. Introduction
Graphs are one of the unifying themes of computer science—an abstract representation that describes the organization of transportation systems, human interactions, and telecommunication networks. That so many different structures can be modeled using a single formalism is a source of great power to the educated programmer.
The Algorithm Design Manual, by Steven S. Skiena (Springer), Distinguished Teaching Professor of Computer Science at Stony Brook University
Today’s most pressing data challenges center around relationships, not just tabulating discrete data. Graph technologies and analytics provide powerful tools for connected data that are used in research, social initiatives, and business solutions such as:
-
Modeling dynamic environments from financial markets to IT services
-
Forecasting the spread of epidemics as well as rippling service delays and outages
-
Finding predictive features for machine learning to combat financial crimes
-
Uncovering patterns for personalized experiences and recommendations
As data becomes increasingly interconnected and systems increasingly sophisticated, it’s essential to make use of the rich and evolving relationships within our data.
This chapter provides an introduction to graph analysis and graph algorithms. We’ll start with a brief refresher about the origin of graphs before introducing graph algorithms and explaining the difference between graph databases and graph processing. We’ll explore the nature of modern ...