This document describes and compares best-first search, breadth-first search, depth-first search, and A* search algorithms. Best-first search combines advantages of BFS and DFS by expanding the most promising node at each step. It uses heuristic functions to evaluate nodes and guide the search. A* search finds the shortest path using a heuristic function to evaluate the cost of reaching the goal from each state. It uses OPEN and CLOSED lists to track nodes during the search process.