1. Graph Types:
*Simple Graph: Node pairs can only have one relationship between
Them
*Multigraph: Node pairs can have multiple relationships between them.
*Graph (also Pseudograph): Node pairs can have multiple relationship
Between them. Nodes can loop back to themselves.
2. Graph Structures:
*Random networks:
Average distribution of connections. No structure or hierarchal patterns.
All nodes have the same probability of being attached to any other node.
*Small-world networks:
Common in social networks (我们可以通过六个人接触到任意的那个我们想要认识的人)
Hub-and-spoke architecture
*Scale-free networks:
Hub-and-spoke architecture preserved at multiple scales.
High power law distribution
3. *Connected graphs: there is a path between all nodes
*Disconnected : island----components/clusters (if nodes in island are connected)
4.*Unweighted graphs: no weight values assigned to their nodes or relationships
*Weighted graphs: represent a variety of measures--- cost, time, distance, capacity`
5. *Undirected graph: relationships are considered bidirectional.
*Directed graph: relationships pointing to a node are referred to as in-links and out-links are those originating from a node.
6. *Cyclic graphs: paths through relationships and nodes that start and end at the same node.
*Acyclic graph: NO cycles. A directed acyclic graph will by definition always have dead ends (leaf nodes)
Trees: acyclic graph and undirected/directed
*Rooted Tree: Root node and no cycles
*Binary Tree: Up to 2 child nodes and no cycles
*Spanning Tree: Subgraph of all nodes but not all relationships and no cycles. A minimum spanning tree connects all the nodes of a graph with either the least number of hops or least weighted paths.
7. *sparsity of a graph: the number of relationships it has compared to the maximum possible number of relationships
*Complete graph: every node has a relationship with every other node. Clique for components
*maximum density : # of relationships possible in a complete graph---MaxD= N(N-1)*2
*actual density: D=2R/N(N-1)
8. *Monopartite: graphs with one node type and relationship type
*Bipartite: whose nodes can be divided into two sets (viewers and TV shows), such that relationships only connect a node from one set to a node form a different set (viewer-->TV shows)
9. Types of Graph Algorithms:
*Pathfinding and search: shortest path
*Centrality: which nodes are more important in a network
*community Detection: find communities---most real-world networks exhibit substructures of more or less independent subgraphs.