Answers.Body: <p>According to <a href="http://intelligence.worldofcomputing.net/ai-search/breadth-first-search.html#.XsaiRRMzZZ0" rel="nofollow noreferrer">this article</a></p>
  <blockquote>
  <p>Breadth First Search (BFS) searches breadth-wise in the problem space. Breadth-First search is like traversing a tree where each node is a state which may a be a potential candidate for solution. It expands nodes from the root of the tree and then generates one level of the tree at a time until a solution is found. It is very easily implemented by maintaining a queue of nodes. Initially the queue contains just the root. In each iteration, node at the head of the queue is removed and then expanded. The generated child nodes are then added to the tail of the queue</p>
  </blockquote>
  <p>According to the book <em>Algorithms and Theory of Computation Handbook</em> by Mikhail J. Atallah.</p>
  <blockquote>
  <p>Recursive best-first search is a best-first search that runs in space that is linear with respect to the maximum search depth, regardless of the cost function used.</p>
  <p>It works by maintaining on the recursion stack the complete path to the current node being expanded as well as all immediate siblings of nodes on that path, along with the cost of the best node in the sub-tree explored below each sibling.</p>
  <p>Whenever the cost of the current node exceeds that of some other node in the previously expanded portion of the tree, the algorithm backs up to their deepest common ancestor, and continues the search down the new path.</p>
  <p>In effect, the algorithm maintains a separate threshold for each sub-tree diverging from the current search path.</p>
  </blockquote>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-11-18T18:00:08.380Z
Answers.LastActivityDate: 2020-05-21T22:20:53.760Z
Answers.LastEditDate: 2020-06-17T09:57:20.710Z
Answers.UserDisplayName: Abbas Ali
Body: <p>What is the difference between the breadth-first search and recursive best-first search? How can I describe the key difference between them?</p>
  
Tags: <comparison><search><breadth-first-search>
Title: What is the difference between the breadth-first search and recursive best-first search?
UserDisplayName: Marosh Fatima
ThreadText: # What is the difference between the breadth-first search and recursive best-first search?
  
  (Asked by: username_0 on 2018-11-17)
  
  What is the difference between the breadth-first search and recursive best-first search? How can I describe the key difference between them?
  
  **Tags:** comparison, search, breadth-first-search
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2018-11-18. Score: 1 | Accepted answer
  
  According to [this article](http://intelligence.worldofcomputing.net/ai-search/breadth-first-search.html#.XsaiRRMzZZ0)
  
  > Breadth First Search (BFS) searches breadth-wise in the problem space. Breadth-First search is like traversing a tree where each node is a state which may a be a potential candidate for solution. It expands nodes from the root of the tree and then generates one level of the tree at a time until a solution is found. It is very easily implemented by maintaining a queue of nodes. Initially the queue contains just the root. In each iteration, node at the head of the queue is removed and then expanded. The generated child nodes are then added to the tail of the queue
  
  According to the book *Algorithms and Theory of Computation Handbook* by Mikhail J. Atallah.
  
  > Recursive best-first search is a best-first search that runs in space that is linear with respect to the maximum search depth, regardless of the cost function used.
  >
  > It works by maintaining on the recursion stack the complete path to the current node being expanded as well as all immediate siblings of nodes on that path, along with the cost of the best node in the sub-tree explored below each sibling.
  >
  > Whenever the cost of the current node exceeds that of some other node in the previously expanded portion of the tree, the algorithm backs up to their deepest common ancestor, and continues the search down the new path.
  >
  > In effect, the algorithm maintains a separate threshold for each sub-tree diverging from the current search path.
  
  
  ---
  
  