Graph theory

Short description: Area of discrete mathematics

A graph with 6 vertices and 7 edges

In mathematics and computer science, graph theory is the study of graphs, which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of vertices (also called nodes or points) which are connected by edges (also called arcs, links, or lines). A distinction is made between undirected graphs, where edges link two vertices symmetrically, and directed graphs, where edges link two vertices asymmetrically. Graphs are one of the principal objects of study in discrete mathematics.

## Contents

* 1 Definition and etymology
* 2 History
* 3 Subareas
* 3.1 Topological graph theory
* 3.2 Algebraic graph theory
* 3.3 Geometric graph theory
* 3.4 Extremal graph theory
* 3.5 Theory of random graph
* 3.6 Graph enumeration
* 4 Applications
* 4.1 Computer science
* 4.2 Linguistics
* 4.3 Physics and chemistry
* 4.4 Social sciences
* 4.5 Biology and ecology
* 4.6 Other topics
* 5 Representation
* 5.1 Visual: Graph drawing
* 5.2 Tabular: Graph data structures
* 6 Problems
* 6.1 Enumeration
* 6.2 Subgraphs, induced subgraphs, and minors
* 6.3 Graph coloring
* 6.4 Subsumption and unification
* 6.5 Route problems
* 6.6 Network flow
* 6.7 Visibility problems
* 6.8 Covering problems
* 6.9 Decomposition problems
* 6.10 Graph classes
* 7 See also
* 8 Notes
* 9 References
* 10 External links
* 10.1 Online textbooks

## Definition and etymology

Main article: Graph (discrete mathematics)

A graph consists of vertices connected by edges. A graph is occasionally called:

* An undirected graph (top left), distinguishing it from a directed graph that has an arrow on each edge (top right). Undirected and directed graphs can be merged into a mixed graph (bottom left); and
* A simple graph, distinguishing it from a multigraph (bottom right).

Graph theory is a branch of mathematics that studies graphs, mathematical structures for modelling pairwise relations between objects. It is part of discrete mathematics, often considered part of combinatorics, although it is a stand-alone field due to its great growth and distinct from other fields, having its own kind of problems.[1] The term "graph" was introduced by James Joseph Sylvester in a paper published in 1878 in Nature, where he drew an analogy between "quantic invariants" and "co-variants" of algebra and molecular diagrams.[2]

The definition of a graph can vary, but one can understand that a graph is a structure consisting of vertices (also called nodes or points) and edges (also called arcs, links, or lines). Two vertices of an edge are called the endpoints.[3] Occasionally, a graph is called an undirected graph, to distinguish it from a directed graph. A directed graph is a graph where each edge has an assignment direction known as orientation, designated with an arrow.[4] A mixed graph can have edges that may be directed, and some may be undirected.[5] A graph can also be called a simple graph, to distinguish it from a multigraph. A multigraph allows many edges to have the same pair of endpoints, and it also allows an edge to connect a vertex to itself, known as a loop.[6] A graph can have its edges assigned a number, which is known as the weight. Such a graph is called a weight graph.

## History

Map of Königsberg from 1651 showing the layout of the seven bridges, highlighting the Pregel River (in blue) and the bridges (in lime). The problem lays the foundation of both graph theory and topology.

In 1736, Leonhard Euler published a paper titled Solutio Problematis ad Geometriam Situs Pertinentis on the Seven Bridges of Königsberg, which is regarded as the first paper in the history of graph theory.[7] Euler's paper and Alexandre-Théophile Vandermonde's 1771 Remarques sur les Problèmes de Situation paper on the knight's tour carried on with the analysis situs, initiated by Gottfried Wilhelm Leibniz.[8] Euler's characteristic relating the number of edges, vertices, and faces of a convex polyhedron was studied and generalized by Augustin-Louis Cauchy and Simon Antoine Jean L'Huilier,[9] and represents the beginning of the branch of mathematics known as topology.[10]

More than one century after Euler's paper on the bridges of Königsberg, and while Johann Benedict Listing was introducing the concept of topology, Arthur Cayley was led by an interest in particular analytical forms arising from differential calculus to study a particular class of graphs, the trees.[11] This study had many implications for theoretical chemistry. The techniques he used mainly concern the enumeration of graphs with particular properties. Enumerative graph theory then arose from the results of Cayley and the fundamental results published by Pólya between 1935 and 1937. These were generalized by Nicolaas Govert de Bruijn in 1959. Cayley linked his results on trees with contemporary studies of chemical composition.[11] The fusion of ideas from mathematics with those from chemistry began what has become part of the standard terminology of graph theory.

The autonomous development of topology from 1860 to 1930 fertilized graph theory back through the works of Camille Jordan, Kazimierz Kuratowski, and Hassler Whitney. Another important factor in the common development of graph theory and topology came from the use of the techniques of modern algebra. The first example of such a use comes from the work of the physicist Gustav Kirchhoff, who published in 1845 his Kirchhoff's circuit laws for calculating the voltage and current in electric circuits.

The first textbook on graph theory was written by Dénes Kőnig, and published in 1936.[12] Another book by Frank Harary, published in 1969, was "considered the world over to be the definitive textbook on the subject",[13] and enabled mathematicians, chemists, electrical engineers and social scientists to talk to each other. Harary donated all of the royalties to fund the Pólya Prize.[14]

One of the most famous problems in graph theory is the four color problem: Is it true that any map drawn in the plane may have its regions colored with four colors, in such a way that any two regions having a common border have different colors? This problem was first posed by Francis Guthrie in 1852, and its first written record is in a letter of Augustus De Morgan addressed to William Rowan Hamilton the same year. Many incorrect proofs have been proposed, including those by Augustin Cayley, Alfred Kempe, and others. The study and the generalization of this problem by Peter Tait, Percy John Heawood, Frank P. Ramsey and Hadwiger led to the study of the colorings of the graphs embedded on surfaces with arbitrary genus. Tait's reformulation generated a new class of problems, the factorization problems, particularly studied by Petersen and Dénes Kőnig. The works of Ramsey on colorations, and more specially, the results obtained by Pál Turán in 1941, were at the origin of another branch of graph theory, known as extremal graph theory.

The four-color problem remained unsolved for more than a century. In 1969, Heinrich Heesch published a method for solving the problem using computers.[15] A computer-aided proof produced in 1976 by Kenneth Appel and Wolfgang Haken makes fundamental use of the notion of "discharging" developed by Heesch.[16][17] The proof involved checking the properties of 1,936 configurations by computer, and was not fully accepted at the time due to its complexity. A simpler proof considering only 633 configurations was given twenty years later by Robertson, Seymour, Sanders and Thomas.[18]

The introduction of probabilistic methods in graph theory, especially in the study of Erdős and Rényi of the asymptotic probability of graph connectivity, gave rise to yet another branch, known as random graph theory, which has been a fruitful source of graph-theoretic results.[19]

## Subareas

### Topological graph theory

Main article: Topological graph theory

See also: Category:Topological graph theory

Topological graph theory deals with the study of graphs related to topology. The topics, along with the given top-to-bottom illustrations, are

* Embedding of a graph in a surface, with an example of Heawood graph in torus;
* 1-page embedding of the diamond graph;
* Crossing number, with an example of a complete bipartite graph of four and seven vertices K4,7, having with 18 crossings (in red dots); and
* Map coloring, using four-color theorem to color differently each state in the United States, ignoring lakes and oceans.

Topological graph theory deals with the study of graphs as topological spaces. The graph in a topology is a set of simplexes that is called the simplicial one-dimensional complex.[20] This subarea studies the embedding (or imbedding) of a graph in surface and linkless embedding, graph minors, crossing number, map coloring, and voltage graph.[21]

The embedding of a graph in a surface is the representation of a graph in which the points are associated with the vertices and simple arcs with edges in a surface. The endpoints are associated with an edge, and the points with the end vertices. No arcs include points associated with other vertices, and two arcs never intersect at a point that is interior to either of the arcs.[citation needed] The graph embedding can be generalized into the linkless embedding, whereby no two cycles of the graph are linked in three-dimensional Euclidean space,[22] and a book, a collection of half-planes all having the same line as their boundary.[23]

The graph is said to be minor if it can be formed from another graph by deleting vertices and edges, and by edge-contraction.[22] The earliest result of the graph minor theory is from Wagner's theorem, stating that a finite graph is planar if and only if its minor includes neither the complete graph on five vertices K5 nor the utility graph.[24] A related result is the Robertson–Seymour theorem, implying the existence of forbidden minor for every property of graphs preserved by deletions and edge contractions.[25]

The crossing number tells the minimum number of crossing edges of a graph. This study originated from a Hungarian mathematician Pál Turán who asked for a factory plan that minimized the number of crossings between tracks connecting brick kilns to storage sites. This problem can be formalized as asking for the crossing number of a complete bipartite graph.[26]

A graph coloring is a methodical assignment of labelling the elements of a graph, which is traditionally called colors. In coloring, no two adjacent elements have the same color. It requires the minimum number of colors, which is known as the chromatic number. Four-color theorem stated that no more than four colors are required to color the regions of any map so that no two adjacent regions have the same color; that is, no two regions share a common boundary.[27] This theorem is stronger than five-color theorem. Relatedly, Earth–Moon problem is known for the nowadays open problem on extension of the planar map coloring problem, solved by the four-color theorem.

A voltage graph is a directed graph whose edges are labelled invertibly by elements of a group. This graph concisely specifies the derived graph.[28] It is also a common way to form a covering graph.[29]

### Algebraic graph theory

Main article: Algebraic graph theory

See also: Spectral graph theory and Category:Topological graph theory

Algebraic graph theory uses group theory to study the symmetry of a graph. For example, Petersen graph is high-symmetrical, known for vertex-transitive, symmetric, distance-transitive, and distance-regular. Its automorphism group has 120 elements and symmetric group S5.

Algebraic graph theory is the study of graph theory that involves major branches of algebra. Major branches of algebra that are used are linear algebra and group theory.

A study of graph theory using linear algebra is called spectral graph theory. This study focuses on adjacency matrix, a matrix that represents the graph, and its spectrum, which focuses on the characteristic polynomial, eigenvalues, and eigenvectors of the given adjacency matrix. It also focuses on the Laplacian matrix of a graph, which involves the degree matrix (a diagonal matrix that represents the degree of a vertex) and the adjacency matrix.[30]

Group theory, particularly automorphism groups and geometric group theory, focuses on various families of graphs based on symmetry in algebraic graph theory.[31] Such a symmetry includes symmetric graphs, vertex-transitive graphs, edge-transitive graphs, distance-transitive graphs, distance-regular graphs, and strongly regular graphs.[32] Frucht's theorem states that every finite group is the group of symmetries of a finite undirected graph, or more strongly, there exist infinitely many non-isomorphic simple connected graphs such that the automorphism group of each of them is isomorphic to a finite group.[33]

Algebraic graph theory also studies the algebraic invariants, chromatic polynomial, Tutte polynomial of a graph, and knot invariant.[32] A graph invariant is a property of graphs that depends only on the abstract structure, instead of labellings or drawings of the graph. A chromatic polynomial is a polynomial that counts the number of graph colorings as a function of the number of colors.[34] The Tutte polynomial is a two-variable polynomial on graph connectivity.[35]

### Geometric graph theory

Main article: Geometric graph theory

See also: Graph drawing and Category:Geometric graph theory

Geometric graph theory studies a graph drawn with straight-line or continuous curved edges with geometric properties combinatorially. Within these illustrations, the geometric graph theory studies:

* the Euclidean graph as in Euclidean minimum spanning tree (top left);
* polyhedral graph with an example of dodecahedral graph for a regular dodecahedron (top right);
* the intersection graph of geometric sets like the coin graph with circle packing (bottom left); and
* the incidence geometry as in the Heawood graph being the Levi graph of Fano plane (bottom right).

Geometric graph theory focuses on combinatorial and geometric properties of a graph that is drawn in a plane with straight-line or continuous curved edges in Euclidean space.[36] As part of discrete geometry and computational geometry, geometric graph theory studies planar graphs,[37] relationship to higher-dimensional convex polytopes,[38] intersection of geometrical shaped sets,[39] and other geometries' subareas of incidence geometry and projective geometry.[40]

A planar graph wherein its vertices are embedded as points, and its edges are non-crossing line segments in the Euclidean plane is called planar straight-line graph. Any planar graph can be represented as a planar straight-line graph by Fáry's theorem. The planar straight-line graph is the special case of a Euclidean graph. The Euclidean graph allows its edges to have the length of the Euclidean distance between its endpoints. Its notions are the Euclidean minimum spanning tree on minimizing the total length of the segments for finite points in any Euclidean space, Hadwiger–Nelson problem on asking for the minimum number of coloring plane such that no two points at a unit distance from each other have the same color, and shortest path problem on finding a path between two vertices in a graph that minimizes the sum of the assigned values of its edges.[37]

A visibility graph is a graph whose vertices and edges are the point locations and visible connections, respectively. In a simple polygon, where its edges are not self-intersecting and have no holes, the vertices of a visibility graph are connected by edges that represent the sides and diagonals of a polygon. The vertices are defined as the point locations.[41] Polyhedral graph is an undirected graph that forms the vertices and edges of a three-dimensional convex polyhedron. In order to achieve it, such a graph must meet the requirements of Steinitz's theorem, stating that every convex polyhedron is 3-vertex connected planar graph. The planar graph remains connected whenever any two of its vertices are removed.[42]

An intersection graph is a graph in which each vertex is associated with a set and in which vertices are connected by edges whenever the corresponding sets have a nonempty intersection.[39] Each vertex is represented as a set, and every two vertices are connected. Hence, the intersection graph of finite sets can be represented through the smallest number of required elements, known as the intersection number. The result graph can be geometric whenever the sets are geometrical objects. For instance, the intersection graph of line segments in one dimension is an interval graph. The intersection graph of unit disks in the plane is a unit disk graph. The intersection of a circle packing is a coin graph, where a vertex and an edge represent a circle and every pair of tangent circles; by Koebe–Andreev–Thurston theorem, the intersection graphs of non-crossing circles are exactly the planar graphs.[43] Scheinerman's theorem states that every planar graph can be represented as the intersection graph of line segments in the plane.[44]

The Levi graph is a bipartite graph that associates to the incidence structure and projective configuration.[40]

By applying to information visualization, this creates another subarea of graph theory that is known as graph drawing, which visualizes a graph depiction. Frequently drawn as node–link diagrams, the vertices of a graph are represented as disks, boxes, or textual labels, and the edges are represented as line segments, polylines, or curves in the Euclidean plane.[45] Many definitions for graph drawings based on quality measures include the crossing number,[46] area, symmetry display on finding the problem of a graph's group automorphism,[47] bend minimization, angular resolution,[48] and slope number.[48] Tools for graph drawings are the circle packing,[49] the intersection graph, and other visualizations of the adjacency matrix.

### Extremal graph theory

Main article: Extremal graph theory

See also: Category:Extremal graph theory

Extremal graph theory studies the maximum number of a graph's edges, known as the extremal number. The origin is from Mantel's theorem on finding the extremal number of a triangle-free graph (illustrated), which is ⌊n2/4⌋.

Extremal graph theory is a branch of mathematics at the intersection of extremal combinatorics and graph theory. This area studies the maximum number of a graph's edges, known as the extremal number.[50] The subarea's milestone originated from Mantel's theorem on the extremal number of a triangle-free graph. Turán's theorem extended Mantel's theorem for any undirected graph that does not have a complete subgraph of a given size. Turán's theorem is generalized by Erdős–Stone theorem, which is occasionally known as the "fundamental theorem of extremal graph theory".[51]

Extremal graph theory also studies forbidden subgraph problem, homomorphism density, and Szemerédi regularity lemma. The forbidden subgraphs problem suggests finding the extremal number of a graph with n vertices such that it does not have a subgraph that is isomorphic to the graph.[52] A homomorphism density is a parameter that involves the graph homomorphism. The density may refer to the probability that a map from the vertices of a graph to the vertices of another one chosen uniformly at random is a graph homomorphism. Being homomorphic means there exists a mapping between two graphs that respects their structure, or equivalently, a function between the vertex sets of two graphs that maps adjacent vertices to adjacent vertices.[53] Szemerédi's regularity lemma states that a graph can be partitioned into a bounded number of parts so that the edges between parts are ε-regular.

### Theory of random graph

Main article: Random graph

See also: Category:Random graphs

The theory of random graph focuses on graphs using probabilistic method. The subarea was founded by Hungarian mathematicians Paul Erdős and Alfréd Rényi, whose modelling generates random graphs, known as Erdős–Rényi model.[19]

Random minimum spanning tree on the same graph but with randomized weights

This subarea studies the random tree. A tree is an undirected graph where every pair of vertices is connected by exactly one path. Therefore, a random tree is a tree that is formed by a stochastic process. Many types of random trees include:

* Uniform spanning tree is a spanning tree of a given graph in which each different tree is equally likely to be selected. Being a spanning tree means that a subgraph is a tree that includes all of the vertices of a graph. The uniform spanning tree can be generated by using the method of random simple path known as the loop-erased random walk, of taking a random walk on the given graph and erasing the cycles created by this walk.[54]
* Branching process, a model of a population in which each individual has a random number of children
* Brownian tree, a fractal tree structure created by diffusion-limited aggregation processes
* Random binary tree is a binary tree selected at random from some probability distribution on binary trees.[55] This includes trees formed by random insertion orders,[56] and trees that are uniformly distributed with a given number of nodes.
* Random forest, a machine-learning classifier based on choosing random subsets of variables for each tree and using the most frequent tree output as the overall classification.
* Random minimal spanning tree is a spanning tree of a graph formed by choosing random edge weights and using the minimum spanning tree for those weights.[57]
* Random recursive tree, increasingly labelled trees, which can be generated using a simple stochastic growth rule.
* Rapidly exploring random tree, a fractal space-filling pattern used as a data structure for searching high-dimensional spaces.
* Treap or randomized binary search tree, a data structure that uses random choices to simulate a random binary tree for non-random update sequences

### Graph enumeration

Main article: Graph enumeration

## Applications

The network graph formed by Wikipedia editors (edges) contributing to different Wikipedia language versions (vertices) during one month in summer 2013[58]

Graphs can be used to model many types of relations and processes in physical, biological,[59][60] social and information systems.[61] Many practical problems can be represented by graphs. Emphasizing their application to real-world systems, the term network is sometimes defined to mean a graph in which attributes (e.g. names) are associated with the vertices and edges, and the subject that expresses and understands real-world systems as a network is called network science.

### Computer science

Within computer science, 'causal' and 'non-causal' linked structures are graphs that are used to represent networks of communication, data organization, computational devices, the flow of computation, etc. For instance, the link structure of a website can be represented by a directed graph, in which the vertices (nodes) represent web pages and directed edges represent links from one page to another. A similar approach can be taken to problems in social media,[62] travel, biology, computer chip design, mapping the progression of neuro-degenerative diseases,[63][64] and many other fields. The development of algorithms to handle graphs is therefore of major interest in computer science. The transformation of graphs is often formalized and represented by graph rewrite systems. Complementary to graph transformation systems focusing on rule-based in-memory manipulation of graphs are graph databases geared towards transaction-safe, persistent storing and querying of graph-structured data.

### Linguistics

Graph-theoretic methods, in various forms, have proven particularly useful in linguistics, since natural language often lends itself well to discrete structure. Traditionally, syntax and compositional semantics follow tree-based structures, whose expressive power lies in the principle of compositionality, modeled in a hierarchical graph. More contemporary approaches such as head-driven phrase structure grammar model the syntax of natural language using typed feature structures, which are directed acyclic graphs. Within lexical semantics, especially as applied to computers, modeling word meaning is easier when a given word is understood in terms of related words; semantic networks are therefore important in computational linguistics. Still, other methods in phonology (e.g. optimality theory, which uses lattice graphs) and morphology (e.g. finite-state morphology, using finite-state transducers) are common in the analysis of language as a graph. Indeed, the usefulness of this area of mathematics to linguistics has borne organizations such as TextGraphs, as well as various 'Net' projects, such as WordNet, VerbNet, and others.

### Physics and chemistry

Graph theory is also used to study molecules in chemistry and physics. In condensed matter physics, the three-dimensional structure of complicated simulated atomic structures can be studied quantitatively by gathering statistics on graph-theoretic properties related to the topology of the atoms. Also, "the Feynman graphs and rules of calculation summarize quantum field theory in a form in close contact with the experimental numbers one wants to understand."[65] In chemistry a graph makes a natural model for a molecule, where vertices represent atoms and edges bonds. This approach is especially used in computer processing of molecular structures, ranging from chemical editors to database searching. In statistical physics, graphs can represent local connections between interacting parts of a system, as well as the dynamics of a physical process on such systems. Similarly, in computational neuroscience graphs can be used to represent functional connections between brain areas that interact to give rise to various cognitive processes, where the vertices represent different areas of the brain and the edges represent the connections between those areas. Graph theory plays an important role in electrical modeling of electrical networks, here, weights are associated with resistance of the wire segments to obtain electrical properties of network structures.[66] Graphs are also used to represent the micro-scale channels of porous media, in which the vertices represent the pores and the edges represent the smaller channels connecting the pores. Chemical graph theory uses the molecular graph as a means to model molecules. Graphs and networks are excellent models to study and understand phase transitions and critical phenomena. Removal of nodes or edges leads to a critical transition where the network breaks into small clusters which is studied as a phase transition. This breakdown is studied via percolation theory.[67]

### Social sciences

Graph theory in sociology: Moreno Sociogram (1953).[68]

Graph theory is also widely used in sociology as a way, for example, to measure actors' prestige or to explore rumor spreading, notably through the use of social network analysis software. Under the umbrella of social networks are many different types of graphs.[69] Acquaintanceship and friendship graphs describe whether people know each other. Influence graphs model whether certain people can influence the behavior of others. Finally, collaboration graphs model whether two people work together in a particular way, such as acting in a movie together.

### Biology and ecology

Likewise, graph theory is useful in biology and conservation efforts where a vertex can represent regions where certain species exist (or inhabit) and the edges represent migration paths or movement between the regions. This information is important when looking at breeding patterns or tracking the spread of disease, parasites or how changes to the movement can affect other species.

Graphs are also commonly used in molecular biology and genomics to model and analyze datasets with complex relationships. For example, graph-based methods are often used to 'cluster' cells together into cell-types in single-cell transcriptome analysis. Another use is to model genes or proteins in a pathway and study the relationships between them, such as metabolic pathways and gene regulatory networks.[70] Evolutionary trees, ecological networks, and hierarchical clustering of gene expression patterns are also represented as graph structures.

Graph theory is also used in connectomics;[71] nervous systems can be seen as a graph, where the nodes are neurons and the edges are the connections between them.

### Other topics

A graph structure can be extended by assigning a weight to each edge of the graph. Graphs with weights, or weighted graphs, are used to represent structures in which pairwise connections have some numerical values. For example, if a graph represents a road network, the weights could represent the length of each road. There may be several weights associated with each edge, including distance (as in the previous example), travel time, or monetary cost. Such weighted graphs are commonly used to program GPS's, and travel-planning search engines that compare flight times and costs.

## Representation

A graph is an abstraction of relationships that emerge in nature; hence, it cannot be coupled to a certain representation. The way it is represented depends on the degree of convenience such representation provides for a certain application. The most common representations are the visual, in which, usually, vertices are drawn and connected by edges, and the tabular, in which rows of a table provide information about the relationships between the vertices within the graph.

### Visual: Graph drawing

Main article: Graph drawing

Graphs are usually represented visually by drawing a point or circle for every vertex, and drawing a line between two vertices if they are connected by an edge. If the graph is directed, the direction is indicated by drawing an arrow. If the graph is weighted, the weight is added on the arrow.

A graph drawing should not be confused with the graph itself (the abstract, non-visual structure) as there are several ways to structure the graph drawing. All that matters is which vertices are connected to which others by how many edges and not the exact layout. In practice, it is often difficult to decide if two drawings represent the same graph. Depending on the problem domain some layouts may be better suited and easier to understand than others.

The pioneering work of W. T. Tutte was very influential on the subject of graph drawing. Among other achievements, he introduced the use of linear algebraic methods to obtain graph drawings.

Graph drawing also can be said to encompass problems that deal with the crossing number and its various generalizations. The crossing number of a graph is the minimum number of intersections between edges that a drawing of the graph in the plane must contain. For a planar graph, the crossing number is zero by definition. Drawings on surfaces other than the plane are also studied.

There are other techniques to visualize a graph away from vertices and edges, including circle packings, intersection graph, and other visualizations of the adjacency matrix.

### Tabular: Graph data structures

Main article: Graph (abstract data type)

The tabular representation lends itself well to computational applications. There are different ways to store graphs in a computer system. The data structure used depends on both the graph structure and the algorithm used for manipulating the graph. Theoretically one can distinguish between list and matrix structures but in concrete applications the best structure is often a combination of both. List structures are often preferred for sparse graphs as they have smaller memory requirements. Matrix structures on the other hand provide faster access for some applications but can consume huge amounts of memory. Implementations of sparse matrix structures that are efficient on modern parallel computer architectures are an object of current investigation.[72]

List structures include the edge list, an array of pairs of vertices, and the adjacency list, which separately lists the neighbors of each vertex: Much like the edge list, each vertex has a list of which vertices it is adjacent to.

Matrix structures include the incidence matrix, a matrix of 0's and 1's whose rows represent vertices and whose columns represent edges, and the adjacency matrix, in which both the rows and columns are indexed by vertices. In both cases a 1 indicates two adjacent objects and a 0 indicates two non-adjacent objects. The degree matrix indicates the degree of vertices. The Laplacian matrix is a modified form of the adjacency matrix that incorporates information about the degrees of the vertices, and is useful in some calculations such as Kirchhoff's theorem on the number of spanning trees of a graph. The distance matrix, like the adjacency matrix, has both its rows and columns indexed by vertices, but rather than containing a 0 or a 1 in each cell it contains the length of a shortest path between two vertices.

## Problems

### Enumeration

There is a large literature on graphical enumeration: the problem of counting graphs meeting specified conditions. Some of this work is found in Harary and Palmer (1973).

### Subgraphs, induced subgraphs, and minors

A common problem, called the subgraph isomorphism problem, is finding a fixed graph as a subgraph in a given graph. One reason to be interested in such a question is that many graph properties are hereditary for subgraphs, which means that a graph has the property if and only if all subgraphs have it too. Finding maximal subgraphs of a certain kind is often an NP-complete problem. For example:

* Finding the largest complete subgraph is called the clique problem (NP-complete).

One special case of subgraph isomorphism is the graph isomorphism problem. It asks whether two graphs are isomorphic. It is not known whether this problem is NP-complete, nor whether it can be solved in polynomial time.

A similar problem is finding induced subgraphs in a given graph. Again, some important graph properties are hereditary with respect to induced subgraphs, which means that a graph has a property if and only if all induced subgraphs also have it. Finding maximal induced subgraphs of a certain kind is also often NP-complete. For example:

* Finding the largest edgeless induced subgraph or independent set is called the independent set problem (NP-complete).

Still another such problem, the minor containment problem, is to find a fixed graph as a minor of a given graph. A minor or subcontraction of a graph is any graph obtained by taking a subgraph and contracting some (or no) edges. Many graph properties are hereditary for minors, which means that a graph has a property if and only if all minors have it too. For example, Wagner's Theorem states:

* A graph is planar if it contains as a minor neither the complete bipartite graph K3,3 (see the Three-cottage problem) nor the complete graph K5.

A similar problem, the subdivision containment problem, is to find a fixed graph as a subdivision of a given graph. A subdivision or homeomorphism of a graph is any graph obtained by subdividing some (or no) edges. Subdivision containment is related to graph properties such as planarity. For example, Kuratowski's Theorem states:

* A graph is planar if it contains as a subdivision neither the complete bipartite graph K3,3 nor the complete graph K5.

Another problem in subdivision containment is the Kelmans–Seymour conjecture:

* Every 5-vertex-connected graph that is not planar contains a subdivision of the 5-vertex complete graph K5.

Another class of problems has to do with the extent to which various species and generalizations of graphs are determined by their point-deleted subgraphs. For example:

* The reconstruction conjecture

### Graph coloring

Main article: Graph coloring

Many problems and theorems in graph theory have to do with various ways of coloring graphs. Typically, one is interested in coloring a graph so that no two adjacent vertices have the same color, or with other similar restrictions. One may also consider coloring edges (possibly so that no two coincident edges are the same color), or other variations. Among the famous results and conjectures concerning graph coloring are the following:

* Four-color theorem
* Strong perfect graph theorem
* Erdős–Faber–Lovász conjecture
* Total coloring conjecture, also called Behzad's conjecture (unsolved)
* List coloring conjecture (unsolved)
* Hadwiger conjecture (graph theory) (unsolved)

### Subsumption and unification

Constraint modeling theories concern families of directed graphs related by a partial order. In these applications, graphs are ordered by specificity, meaning that more constrained graphs—which are more specific and thus contain a greater amount of information—are subsumed by those that are more general. Operations between graphs include evaluating the direction of a subsumption relationship between two graphs, if any, and computing graph unification. The unification of two argument graphs is defined as the most general graph (or the computation thereof) that is consistent with (i.e. contains all of the information in) the inputs, if such a graph exists; efficient unification algorithms are known.

For constraint frameworks which are strictly compositional, graph unification is the sufficient satisfiability and combination function. Well-known applications include automatic theorem proving and modeling the elaboration of linguistic structure.

### Route problems

* Hamiltonian path problem
* Minimum spanning tree
* Route inspection problem (also called the "Chinese postman problem")
* Seven bridges of Königsberg
* Shortest path problem
* Steiner tree
* Three-cottage problem
* Traveling salesman problem (NP-hard)

### Network flow

There are numerous problems arising especially from applications that have to do with various notions of flows in networks, for example:

* Max flow min cut theorem

### Visibility problems

* Museum guard problem

### Covering problems

Covering problems in graphs may refer to various set cover problems on subsets of vertices/subgraphs.

* Dominating set problem is the special case of set cover problem where sets are the closed neighborhoods.
* Vertex cover problem is the special case of set cover problem where sets to cover are every edges.
* The original set cover problem, also called hitting set, can be described as a vertex cover in a hypergraph.

### Decomposition problems

Decomposition, defined as partitioning the edge set of a graph (with as many vertices as necessary accompanying the edges of each part of the partition), has a wide variety of questions. Often, the problem is to decompose a graph into subgraphs isomorphic to a fixed graph; for instance, decomposing a complete graph into Hamiltonian cycles. Other problems specify a family of graphs into which a given graph should be decomposed, for instance, a family of cycles, or decomposing a complete graph Kn into n − 1 specified trees having, respectively, 1, 2, 3, ..., n − 1 edges.

Some specific decomposition problems and similar problems that have been studied include:

* Arboricity, a decomposition into as few forests as possible
* Cycle double cover, a collection of cycles covering each edge exactly twice
* Edge coloring, a decomposition into as few matchings as possible
* Graph factorization, a decomposition of a regular graph into regular subgraphs of given degrees

### Graph classes

Many problems involve characterizing the members of various classes of graphs. Some examples of such questions are below:

* Enumerating the members of a class
* Characterizing a class in terms of forbidden substructures
* Ascertaining relationships among classes (e.g. does one property of graphs imply another)
* Finding efficient algorithms to decide membership in a class
* Finding representations for members of a class

## See also

* Gallery of named graphs
* Glossary of graph theory
* List of graph theory topics
* List of unsolved problems in graph theory
* Publications in graph theory
* Graph algorithm

## Notes

1. ↑ Mohar & Thomassen (2001). harv error: no target: CITEREFMoharThomassen2001 (help)
2. ↑ Sylvester (1878). harv error: no target: CITEREFSylvester1878 (help)
3. ↑ Ore (1962), p. 1. harv error: no target: CITEREFOre1962 (help)
4. ↑ Ore (1962), p. 2. harv error: no target: CITEREFOre1962 (help)
5. ↑ Ore (1962), p. 3. harv error: no target: CITEREFOre1962 (help)
6. ↑ Bollobas (2013), p. 7.
7. ↑ Biggs, Lloyd & Wilson (1986), pp. 2–3.
8. ↑ Biggs, Lloyd & Wilson (1986), pp. 21–22.
9. ↑

* Cauchy (1813) harv error: no target: CITEREFCauchy1813 (help)
* L'Huillier (1812–1813)

10. ↑ Richeson (2008), p. 63. harv error: no target: CITEREFRicheson2008 (help)
11. ↑ 11.0 11.1 Cayley (1875). harv error: no target: CITEREFCayley1875 (help)
12. ↑ Tutte (2001), p. 30. harv error: no target: CITEREFTutte2001 (help)
13. ↑ Gardner (1992), p. 203.
14. ↑ Society for Industrial and Applied Mathematics (2002), p. 26.
15. ↑ Heinrich Heesch: Untersuchungen zum Vierfarbenproblem. Mannheim: Bibliographisches Institut 1969.
16. ↑ Appel, K.; Haken, W. (1977), "Every planar map is four colorable. Part I. Discharging", Illinois J. Math. 21 (3): 429–490, doi:10.1215/ijm/1256049011, https://projecteuclid.org/journals/illinois-journal-of-mathematics/volume-21/issue-3/Every-planar-map-is-four-colorable-Part-I-Discharging/10.1215/ijm/1256049011.pdf.
17. ↑ Appel, K.; Haken, W. (1977), "Every planar map is four colorable. Part II. Reducibility", Illinois J. Math. 21 (3): 491–567, doi:10.1215/ijm/1256049012.
18. ↑ Robertson, N.; Sanders, D.; Seymour, P.; Thomas, R. (1997), "The four color theorem", Journal of Combinatorial Theory, Series B 70: 2–44, doi:10.1006/jctb.1997.1750.
19. ↑ 19.0 19.1 Bollobás (2001), p. xi.
20. ↑ Gross & Tucker (2012), p. 1. harv error: no target: CITEREFGrossTucker2012 (help)
21. ↑

* Gross & Tucker (2012), Contents harv error: no target: CITEREFGrossTucker2012 (help)
* Beineke & Wilson (2009), Contents

22. ↑ 22.0 22.1 Lovász (2006), p. 76. harv error: no target: CITEREFLovász2006 (help)
23. ↑ Persinger (1966).
24. ↑ Lovász (2006), p. 77. harv error: no target: CITEREFLovász2006 (help)
25. ↑ Lovász (2006), p. 78, Theorem 4. harv error: no target: CITEREFLovász2006 (help)
26. ↑ Foulds (1992), p. 71.
27. ↑ Gross & Tucker (2012), p. 215. harv error: no target: CITEREFGrossTucker2012 (help)
28. ↑ Gross & Tucker (2012), p. 57. harv error: no target: CITEREFGrossTucker2012 (help)
29. ↑ Gross & Tucker (2012), p. 72. harv error: no target: CITEREFGrossTucker2012 (help)
30. ↑

* Cvetković & Rowlinson (2004), p. 88
* Kaveh (2013), pp. 27–28

31. ↑ Biggs (1993), Chapter 15: Automorphisms of graphs.
32. ↑ 32.0 32.1 Godsil & Royle (2001), pp. xii–ixi.
33. ↑ Gross & Tucker (2012), p. 70. harv error: no target: CITEREFGrossTucker2012 (help)
34. ↑ Biggs (1993), p. 64.
35. ↑ Biggs (1993), p. 98.
36. ↑ Pach (2018), p. 257.
37. ↑ 37.0 37.1 Bounceur, Bezoui & Euler (2019), pp. 13–14.
38. ↑

* Everett & Corneil (1995) harv error: no target: CITEREFEverettCorneil1995 (help)
* Ziegler (2007), pp. 628–642 harv error: no target: CITEREFZiegler2007 (help)

39. ↑ 39.0 39.1 McKee & McMorris (1999), p. 1-2.
40. ↑ 40.0 40.1 Grünbaum (2006), p. 181. harv error: no target: CITEREFGrünbaum2006 (help)
41. ↑ Everett & Corneil (1995). harv error: no target: CITEREFEverettCorneil1995 (help)
42. ↑ Ziegler (2007), pp. 628–642. harv error: no target: CITEREFZiegler2007 (help)
43. ↑

* Brightwell & Scheinerman (1993), p. 214 harv error: no target: CITEREFBrightwellScheinerman1993 (help)
* Thurston (2002), p. 330, Corollary 13.6.2. harv error: no target: CITEREFThurston2002 (help)

44. ↑ Chalopin & Gonçalves (2009).
45. ↑ Di Battista et al. (1994), p. viii. harv error: no target: CITEREFDi_BattistaEadesTamassiaTollis1994 (help)
46. ↑ Di Battista et al. (1994), p. 14. harv error: no target: CITEREFDi_BattistaEadesTamassiaTollis1994 (help)
47. ↑ Di Battista et al. (1994), p. 16. harv error: no target: CITEREFDi_BattistaEadesTamassiaTollis1994 (help)
48. ↑ 48.0 48.1 Pach & Sharir (2009). harv error: no target: CITEREFPachSharir2009 (help)
49. ↑ Malitz & Papakostas (1994).
50. ↑ Chartrand et al. (2024), p. 221.
51. ↑ Bollobas (2013), p. 104.
52. ↑ Bollobas (2013), p. 123.
53. ↑

* Zhao (2023), p. 135
* Borgs et al. (2008) harv error: no target: CITEREFBorgsChayesLovászSós2008 (help)
* Hahn & Tardif (1997), p. 108-109

54. ↑ Wilson (1996).
55. ↑ Sedgewick & Flajolet (2013), p. 286. harv error: no target: CITEREFSedgewickFlajolet2013 (help)
56. ↑ Morin (2004). harv error: no target: CITEREFMorin2004 (help)
57. ↑ McDiarmid, Johnson & Stone (1997).
58. ↑ Hale, Scott A. (2014). "Multilinguals and Wikipedia editing". Proceedings of the 2014 ACM conference on Web science. pp. 99–108. doi:10.1145/2615569.2615684. ISBN 978-1-4503-2622-3. Bibcode: 2013arXiv1312.0976H.
59. ↑ Mashaghi, A. (2004). "Investigation of a protein complex network". European Physical Journal B 41 (1): 113–121. doi:10.1140/epjb/e2004-00301-0. Bibcode: 2004EPJB...41..113M.
60. ↑ Shah, Preya; Ashourvan, Arian; Mikhail, Fadi; Pines, Adam; Kini, Lohith; Oechsel, Kelly; Das, Sandhitsu R; Stein, Joel M et al. (2019-07-01). "Characterizing the role of the structural connectome in seizure dynamics" (in en). Brain 142 (7): 1955–1972. doi:10.1093/brain/awz125. ISSN 0006-8950. PMID 31099821.
61. ↑ Adali, Tulay; Ortega, Antonio (May 2018). "Applications of Graph Theory [Scanning the Issue]". Proceedings of the IEEE 106 (5): 784–786. doi:10.1109/JPROC.2018.2820300. ISSN 0018-9219.
62. ↑ Grandjean, Martin (2016). "A social network analysis of Twitter: Mapping the digital humanities community". Cogent Arts & Humanities 3 (1). doi:10.1080/23311983.2016.1171458. https://hal.archives-ouvertes.fr/hal-01517493/file/A social network analysis of Twitter Mapping the digital humanities community.pdf.
63. ↑ Vecchio, F (2017). ""Small World" architecture in brain connectivity and hippocampal volume in Alzheimer's disease: a study via graph theory from EEG data". Brain Imaging and Behavior 11 (2): 473–485. doi:10.1007/s11682-016-9528-3. PMID 26960946.
64. ↑ Vecchio, F (2013). "Brain network connectivity assessed using graph theory in frontotemporal dementia". Neurology 81 (2): 134–143. doi:10.1212/WNL.0b013e31829a33f8. PMID 23719145.
65. ↑ Bjorken, J. D.; Drell, S. D. (1965). Relativistic Quantum Fields. New York: McGraw-Hill. p. viii. https://archive.org/details/relativisticquan0000bjor_c5q0.
66. ↑ Kumar, Ankush; Kulkarni, G. U. (2016-01-04). "Evaluating conducting network based transparent electrodes from geometrical considerations". Journal of Applied Physics 119 (1): 015102. doi:10.1063/1.4939280. ISSN 0021-8979. Bibcode: 2016JAP...119a5102K.
67. ↑ Newman, Mark (2010). Networks: An Introduction. Oxford University Press. http://math.sjtu.edu.cn/faculty/xiaodong/course/Networks An introduction.pdf. Retrieved 2019-10-30.
68. ↑ Grandjean, Martin (2015). "Social network analysis and visualization: Moreno's Sociograms revisited". Redesigned network strictly based on Moreno (1934), Who Shall Survive.
69. ↑ Rosen, Kenneth H. (2011-06-14). Discrete mathematics and its applications (7th ed.). New York: McGraw-Hill. ISBN 978-0-07-338309-5.
70. ↑ Kelly, S.; Black, Michael (2020-07-09). "graphsim: An R package for simulating gene expression data from graph structures of biological pathways". Journal of Open Source Software (The Open Journal) 5 (51): 2161. doi:10.21105/joss.02161. ISSN 2475-9066. Bibcode: 2020JOSS....5.2161K. https://www.biorxiv.org/content/biorxiv/early/2020/06/30/2020.03.02.972471.full.pdf.
71. ↑ Shah, Preya; Ashourvan, Arian; Mikhail, Fadi; Pines, Adam; Kini, Lohith; Oechsel, Kelly; Das, Sandhitsu R; Stein, Joel M et al. (2019-07-01). "Characterizing the role of the structural connectome in seizure dynamics" (in en). Brain 142 (7): 1955–1972. doi:10.1093/brain/awz125. ISSN 0006-8950. PMID 31099821.
72. ↑ Kepner, Jeremy; Gilbert, John (2011). Graph Algorithms in the Language of Linear Algebra. SIAM. p. 1171458. ISBN 978-0-898719-90-1. https://my.siam.org/Store/Product/viewproduct/?ProductId=106663.

## References

* Lowell W. Beineke; Bjarne Toft; and Robin J. Wilson: Milestones in Graph Theory: A Century of Progress, AMS/MAA, (SPECTRUM, v.108), ISBN 978-1-4704-6431-8 (2025).
* Beineke, Lowell W.; Wilson, Robin J. (2009). Topics in Topological Graph Theory. Cambridge University Press. ISBN 978-1-139-64368-9. https://books.google.com/books?id=Z8P3CwAAQBAJ.
* Bender, Edward A.; Williamson, S. Gill (2010). Lists, Decisions and Graphs. With an Introduction to Probability. https://books.google.com/books?id=vaXv_yhefG8C.
* Berge, Claude (1958). Théorie des graphes et ses applications. Paris: Dunod. English edition, Wiley 1961; Methuen & Co, New York 1962; Russian, Moscow 1961; Spanish, Mexico 1962; Roumanian, Bucharest 1969; Chinese, Shanghai 1963; Second printing of the 1962 first English edition, Dover, New York 2001.
* Biggs, Norman (1993). Algebraic Graph Theory (2nd ed.). Cambridge University Press.
* Biggs, N.; Lloyd, E.; Wilson, R. (1986). Graph Theory, 1736-1936. Oxford University Press.
* Bollobas, Bela (2013). Modern Graph Theory. Springer. ISBN 978-1-4612-0619-4. https://books.google.com/books?id=JeIlBQAAQBAJ.
* Bollobás, Béla; Riordan, O. M. (2003). Mathematical results on scale-free random graphs in "Handbook of Graphs and Networks" (S. Bornholdt and H.G. Schuster (eds)) (1st ed.). Weinheim: Wiley VCH.
* Bollobás, B. (2001). Random Graphs (2nd ed.). Cambridge University Press. ISBN 0-521-79722-5. https://books.google.com/books?id=o9WecWgilzYC.
* Bondy, J. A.; Murty, U. S. R. (2008). Graph Theory. Springer. ISBN 978-1-84628-969-9.
* Borgs, Christian; Chayes, Jennifer T. (2008). "Convergent sequences of dense graphs. I. Subgraph frequencies, metric properties and testing". Advances in Mathematics 219 (6): 1801–1851. doi:10.1016/j.aim.2008.07.008.
* Bounceur, Ahcene; Bezoui, Madani; Euler, Reinhardt (2019). Boundaries and Hulls of Euclidean Graphs: From Theory to Practice. CRC Press. ISBN 978-1-351-69028-7. https://books.google.com/books?id=UmYIEQAAQBAJ.
* A. Bretto and A. Faisant and F. Hennecart. Elements of Graph Theory: From Basic Concepts to Modern Developments. Ems Textbooks in Mathematics, 25, 2022 .
* "Representations of planar graphs". SIAM Journal on Discrete Mathematics 6 (2): 214–229. 1993. doi:10.1137/0406017.
* "Recherche sur les polyèdres - premier mémoire". Journal de l'École Polytechnique 9 (Cahier 16): 66–86. 1813.
* "Ueber die Analytischen Figuren, welche in der Mathematik Bäume genannt werden und ihre Anwendung auf die Theorie chemischer Verbindungen". Berichte der Deutschen Chemischen Gesellschaft 8 (2): 1056–1059. 1875. doi:10.1002/cber.18750080252. https://zenodo.org/record/1425086.
* "On the theory of the analytical forms called trees". The Collected Mathematical Papers. 3. 2009. pp. 242–246. doi:10.1017/CBO9780511703690.046. ISBN 978-0-511-70369-0. https://rcin.org.pl/dlibra/docmetadata?showContent=true&id=173708.
* Chalopin, J.; Gonçalves, D. (2009). "Every planar graph is the intersection graph of segments in the plane: Extended abstract". Proceedings of the forty-first annual ACM symposium on Theory of computing. pp. 631–638. doi:10.1145/1536414.1536500. ISBN 978-1-60558-506-2.
* Chartrand, Gary (1985). Introductory Graph Theory. Dover. ISBN 0-486-24775-9. https://archive.org/details/introductorygrap0000char.
* Chartrand, Gary; Jordon, Heather; Vatter, Vincent; Zhang, Ping (2024). Graphs & Digraphs. CRC Press. ISBN 978-1-003-80108-5. https://books.google.com/books?id=01cIEQAAQBAJ.
* Cvetković, Dragoš M.; Rowlinson, Peter (2004). "Spectral graph theory". Topics in Algebraic Graph Theory. Cambridge University Press. ISBN 978-0-521-80197-3. https://books.google.com/books?id=z2K26gZLC1MC.
* Deo, Narsingh (1974). Graph Theory with Applications to Engineering and Computer Science. Englewood, New Jersey: Prentice-Hall. ISBN 0-13-363473-6. https://www.edutechlearners.com/download/Graphtheory.pdf.
* Di Battista, Giuseppe (1994). "Algorithms for Drawing Graphs: an Annotated Bibliography". Computational Geometry: Theory and Applications 4 (5): 235–282. doi:10.1016/0925-7721(94)00014-x.
* Everett, Hazel (1995). "Negative results on characterizing visibility graphs". Computational Geometry: Theory & Applications 5 (2): 51–63. doi:10.1016/0925-7721(95)00021-Z.
* Foulds, L. R. (1992). Graph Theory Applications. Universitext. Springer. ISBN 978-1-4612-0933-1. https://books.google.com/books?id=5G4QBwAAQBAJ.
* Gardner, Martin (1992), Fractal Music, Hypercards, and more…Mathematical Recreations from Scientific American, W. H. Freeman and Company, p. 203
* Gibbons, Alan (1985). Algorithmic Graph Theory. Cambridge University Press.
* Godsil, Chris; Royle, Gordon F. (2001). Algebraic Graph Theory. Springer. ISBN 978-1-4613-0163-9. https://books.google.com/books?id=GeSPBAAAQBAJ.
* Golumbic, Martin (1980). Algorithmic Graph Theory and Perfect Graphs. Academic Press.
* Gross, J. L. (2012). Topological Graph Theory. Dover Publications. ISBN 978-0-486-41741-7. https://books.google.com/books?id=6HmA_x0dL9oC.
* "Configurations of points and lines". The Coxeter Legacy. Providence, RI: American Mathematical Society. 2006. pp. 179–225.
* Hahn, Geňa; Tardif, Claude (1997). "Graph homomorphisms: structure and symmetry". Graph Symmetry: Algebraic Methods and Applications. Kluwer Academic Publisher. ISBN 978-0-7923-4668-5. https://books.google.com/books?id=-tIaXdII8egC.
* Harary, Frank (1969). Graph Theory. Reading, Massachusetts: Addison-Wesley.
* Harary, Frank; Palmer, Edgar M. (1973). Graphical Enumeration. New York, New York: Academic Press.
* Kaveh, A. (2013). Optimal Analysis of Structures by Concepts of Symmetry and Regularity. Springer. ISBN 978-3-7091-1565-7. https://books.google.com/books?id=oV9GAAAAQBAJ.
* Kepner, Jeremy; Gilbert, John (2011). Graph Algorithms in The Language of Linear Algebra. Philadelphia, Pennsylvania: SIAM. ISBN 978-0-89871-990-1. https://my.siam.org/Store/Product/viewproduct/?ProductId=106663.
* L'Huillier, S.A.J. (1812–1813). "Mémoire sur la polyèdrométrie". Annales de Mathématiques 3: 169–189.
* "Graph minor theory". Bulletin of the American Mathematical Society 43 (1): 75–86. 2006. doi:10.1090/S0273-0979-05-01088-8.
* Mahadev, N. V. R.; Peled, Uri N. (1995). Threshold Graphs and Related Topics. North-Holland.
* Malitz, Seth; Papakostas, Achilleas (1994). "On the angular resolution of planar graphs". SIAM Journal on Discrete Mathematics 7 (2): 172–183. doi:10.1137/S0895480193242931.
* McDiarmid, Colin; Johnson, Theodore; Stone, Harold S. (1997). "On finding a minimum spanning tree in a network with random weights". Random Structures & Algorithms 10 (1–2): 187–204. doi:10.1002/(SICI)1098-2418(199701/03)10:1/2<187::AID-RSA10>3.3.CO;2-Y. http://www.stats.ox.ac.uk/~cstone/mst.pdf.
* McKee, Terry A.; McMorris, F. R. (1999). Topics in Intersection Graph Theory. Society for Industrial and Applied Mathematics. ISBN 978-0-89871-430-2. https://books.google.com/books?id=phWjyYLP7d4C.
* Graphs on Surfaces. Johns Hopkins University Press. 2001. ISBN 978-0-8018-6689-0. OCLC 45102952. https://www.press.jhu.edu/books/title/1675/graphs-surfaces.
* "Chapter 7: Random Binary Search Trees". Open Data Structures (in pseudocode) (0.1Gβ ed.). March 22, 2014. pp. 145–164. https://opendatastructures.org/ods-python.pdf.
* Newman, Mark (2010). Networks: An Introduction. Oxford University Press.
* Theory of Graphs. American Mathematical Society. 1962. https://archive.org/details/theoryofgraphs0000orey.
* Pach, János (2018). "Geometric Graph Theory". Handbook of Discrete and Computational Geometry (3rd ed.). CRC Press.
* "5.5 Angular resolution and slopes". Combinatorial Geometry and Its Algorithmic Applications: The Alcalá Lectures. Mathematical Surveys and Monographs. 152. American Mathematical Society. 2009. pp. 126–127.
* Persinger, C. A. (1966). "Subsets of n-books in E3". Pacific Journal of Mathematics 18: 169–173. doi:10.2140/pjm.1966.18.169.
* Euler's Gem: The Polyhedron Formula and the Birth of Topology. Princeton University Press. 2008.
* "Chapter 6: Trees". An Introduction to the Analysis of Algorithms (2nd ed.). Addison-Wesley. 2013. ISBN 9780133373486.
* Looking Back, Looking Ahead: A SIAM History. Society for Industrial and Applied Mathematics. 2002. p. 26. http://www.siam.org/about/more/siam50.pdf. Retrieved 2016-03-14.
* "Chemistry and Algebra". Nature 17 (432): 284. 1878. doi:10.1038/017284a0. Bibcode: 1878Natur..17..284S. https://archive.org/stream/nature15unkngoog#page/n312/mode/1up.
* "§13.6, Andreev's theorem and generalizations, and §13.7, Constructing patterns of circles". The Geometry and Topology of 3-manifolds. MSRI Publications. March 2002. pp. 330–346. Electronic version 1.1. https://library.slmath.org/nonmsri/gt3m/. Retrieved 2025-12-09.
* Graph Theory. Cambridge University Press. 2001. ISBN 978-0-521-79489-3. https://books.google.com/books?id=uTGhooU37h4C.
* Wilson, David Bruce (1996). "Generating random spanning trees more quickly than the cover time". Proceedings of the Twenty-Eighth Annual ACM Symposium on the Theory of Computing (STOC 1996). pp. 296–303. doi:10.1145/237814.237880. ISBN 0-89791-785-5.
* Zhao, Yufei (2023). Graph Theory and Additive Combinatorics: Exploring Structure and Randomness. Cambridge University Press. ISBN 978-1-009-31094-9. https://books.google.com/books?id=QDHEEAAAQBAJ.
* Miller, Ezra; Reiner, Victor, eds (2007). "Convex polytopes: extremal constructions and f-vector shapes. Section 1.3: Steinitz's theorem via circle packings". Geometric Combinatorics. IAS/Park City Mathematics Series. 13. American Mathematical Society. pp. 628–642. ISBN 978-0-8218-3736-8.

## External links

| Wikimedia Commons has media related to Graph theory.

|

* Hazewinkel, Michiel, ed. (2001), "Graph theory", Encyclopedia of Mathematics, Springer Science+Business Media B.V. / Kluwer Academic Publishers, ISBN 978-1-55608-010-4, https://www.encyclopediaofmath.org/index.php?title=p/g045010
* Graph theory tutorial
* A searchable database of small connected graphs
* House of Graphs — searchable database of graphs with a drawing-based search feature.
*   * Concise, annotated list of graph theory resources for researchers[Usurped!]
* rocs — a graph theory IDE
* The Social Life of Routers — non-technical paper discussing graphs of people and computers
* Graph Theory Software — tools to teach and learn graph theory
* Online books, and library resources in your library and in other libraries about graph theory
* A list of graph algorithms with references and links to graph library implementations

### Online textbooks

* Hartmann, Alexander K.; Weigt, Martin (2005). "Introduction to graphs". Phase Transitions in Combinatorial Optimization Problems: Basics, Algorithms and Statistical Mechanics. Wiley. pp. 25–66. doi:10.1002/3527606734.ch3. ISBN 978-3-527-60673-3.
* Digraphs: Theory Algorithms and Applications 2007 by Jorgen Bang-Jensen and Gregory Gutin
* Graph Theory, by Reinhard Diestel

* v
* t
* e

Areas of mathematics

Foundations|

* Category theory
* Information theory
* Mathematical logic
* Philosophy of mathematics
* Set theory

Algebra|

* Abstract
* Elementary
* Linear
* Multilinear
* Universal

Analysis|

* Calculus
* Real analysis
* Complex analysis
* Differential equations
* Functional analysis
* Harmonic analysis

Discrete|

* Combinatorics
* Graph theory
* Order theory
* Game theory

Geometry|

* Algebraic
* Analytic
* Differential
* Discrete
* Euclidean
* Finite

Number theory|

* Arithmetic
* Algebraic number theory
* Analytic number theory
* Diophantine geometry

Topology|

* Algebraic
* Differential
* Geometric

Applied|

* Control theory
* Mathematical biology
* Mathematical chemistry
* Mathematical economics
* Mathematical finance
* Mathematical physics
* Mathematical psychology
* Mathematical statistics
* Probability
* Statistics

Computational|

* Computer science
* Theory of computation
* Numerical analysis
* Optimization
* Computer algebra

Others|

* History of mathematics
* Recreational mathematics
* Mathematics and art
* Mathematics education

* Category
* Portal
* Commons
* WikiProject

* v
* t
* e

Computer science

Note: This template roughly follows the 2012 ACM Computing Classification System.

Hardware|

* Printed circuit board
* Peripheral
* Integrated circuit
* Very Large Scale Integration
* Systems on Chip (SoCs)
* Energy consumption (Green computing)
* Electronic design automation
* Hardware acceleration

Computer systems
organization|

* Computer architecture
* Embedded system
* Real-time computing
* Dependability

Networks|

* Network architecture
* Network protocol
* Network components
* Network scheduler
* Network performance evaluation
* Network service

Software organization|

* Interpreter
* Middleware
* Virtual machine
* Operating system
* Software quality

Software notations
and tools|

* Programming paradigm
* Programming language
* Compiler
* Domain-specific language
* Modeling language
* Software framework
* Integrated development environment
* Software configuration management
* Software library
* Software repository

Software development|

* Software development process
* Requirements analysis
* Software design
* Software construction
* Software deployment
* Software maintenance
* Programming team
* Open-source model

Theory of computation|

* Model of computation
* Formal language
* Automata theory
* Computational complexity theory
* Logic
* Semantics

Algorithms|

* Algorithm design
* Analysis of algorithms
* Algorithmic efficiency
* Randomized algorithm
* Computational geometry

Mathematics
of computing|

* Discrete mathematics
* Probability
* Statistics
* Mathematical software
* Information theory
* Mathematical analysis
* Numerical analysis

Information
systems|

* Database management system
* Information storage systems
* Enterprise information system
* Social information systems
* Geographic information system
* Decision support system
* Process control system
* Multimedia information system
* Data mining
* Digital library
* Computing platform
* Digital marketing
* World Wide Web
* Information retrieval

Security|

* Cryptography
* Formal methods
* Security services
* Intrusion detection system
* Hardware security
* Network security
* Information security
* Application security

Human–computer
interaction|

* Interaction design
* Social computing
* Ubiquitous computing
* Visualization
* Accessibility

Concurrency|

* Concurrent computing
* Parallel computing
* Distributed computing
* Multithreading
* Multiprocessing

Artificial
intelligence|

* Natural language processing
* Knowledge representation and reasoning
* Computer vision
* Automated planning and scheduling
* Search methodology
* Control method
* Philosophy of artificial intelligence
* Distributed artificial intelligence

Machine learning|

* Supervised learning
* Unsupervised learning
* Reinforcement learning
* Multi-task learning
* Cross-validation

Graphics|

* Animation
* Rendering
* Image manipulation
* Graphics processing unit
* Mixed reality
* Virtual reality
* Image compression
* Solid modeling

Applied
computing|

* E-commerce
* Enterprise software
* Computational mathematics
* Computational physics
* Computational chemistry
* Computational biology
* Computational social science
* Computational engineering
* Computational healthcare
* Digital art
* Electronic publishing
* Cyberwarfare
* Electronic voting
* Video games
* Word processing
* Operations research
* Educational technology
* Document management

* Book
* Category
* Outline
* WikiProject
* Commons

* v
* t
* e

Graph analysis software

Free|

* Cytoscape
* Graphviz
* Gephi
* iGraph
* NetworkX
* Tulip

Proprietary|

* Maple
* Mathematica

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Graph theory. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Graph_theory&oldid=4415104"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template