Searching algorithms find a value inside a given data structure. Common searching algorithms are applied on arrays, linked lists and binary trees, but more generally graphs. When searching through graphs, we often use a data structure to store the frontier, i.e., the nodes that we have not checked yet. Three choices make sense:

List