From 6fb0f1eb1811e7b5a8c6d9481cfeb73636c125f4 Mon Sep 17 00:00:00 2001 From: Brady Fukumoto Date: Mon, 16 Sep 2019 11:49:12 -0700 Subject: [PATCH] Initial FAQs --- FAQs.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 FAQs.md diff --git a/FAQs.md b/FAQs.md new file mode 100644 index 0000000000..3ae203c494 --- /dev/null +++ b/FAQs.md @@ -0,0 +1,8 @@ +Q: What is a Graph? +A: A Graph is a data structure that models objects and pairwise relationships between them with nodes and edges. For example: Users and friendships, locations and paths between them, parents and children, etc. + +Q: How many types of graphs are there? +A: Graphs can be directed or undirected, cyclic or acyclic, weighted or unweighted. They can also be represented with different underlying structures including, but not limited to, adjacency lists, adjacency matrices, object and pointers, or a custom solution. + +Q: What is the time complexity (big-O) to add/remove/get a vertex/edge for a graph? +A: It depends on the implementation. ([Graph Representations](https://github.com/LambdaSchool/Graphs/tree/master/objectives/graph-representations)). Before choosing an implementation, it is wise to consider the tradeoffs and complexities of the most commonly used operations.