FAQ: Breadth-First Search: Python - Don't Forget the Children

This community-built FAQ covers the “Don’t Forget the Children” exercise from the lesson “Breadth-First Search: Python”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Computer Science

FAQs on the exercise Don’t Forget the Children

There are currently no frequently asked questions associated with this exercise – that’s where you come in! You can contribute to this section by offering your own questions, answers, or clarifications on this exercise. Ask or answer a question by clicking reply (reply) below.

If you’ve had an “aha” moment about the concepts, formatting, syntax, or anything else with this exercise, consider sharing those insights! Teaching others and answering their questions is one of the best ways to learn and stay sharp.

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!
You can also find further discussion and get answers to your questions over in Language Help.

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head to Language Help and Tips and Resources. If you are wanting feedback or inspiration for a project, check out Projects.

Looking for motivation to keep learning? Join our wider discussions in Community

Learn more about how to use this guide.

Found a bug? Report it online, or post in Bug Reporting

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!

https://www.codecademy.com/paths/computer-science/tracks/cspath-cs-102/modules/tree-traversal-breadth-first-search-and-depth-first-search/lessons/breadth-first-search-with-python/exercises/bfs-py-dont-forget-the-children

I must say this implementation is a bit weird to me. Of course this is high level, but I can’t imagine documents be treated as tree nodes, right? Only folders.

https://www.codecademy.com/paths/computer-science/tracks/cspath-cs-102/modules/tree-traversal-breadth-first-search-and-depth-first-search/lessons/breadth-first-search-with-python/exercises/bfs-py-dont-forget-the-children

Can anyone expand on the following quote?

To ensure each child node has its own list, we need to make a copy of current_path and append the child node. Making a copy of the list is important so each child node has its own list added to the frontier. If current_path is not copied then the children will be added to the same list which will result in an incorrect path as well as only one child being searched.

Something like the following would be useful reading to get an idea of how such a structure is used- Document Object Model - Wikipedia. That’s not the only application but it might be helpful to see it explained anyway.

The quote mentions each node has its own list, remember that lists are mutable (they have operations like .append and lst[0] = something else). If you appended to the same list every time then you’d simply end up with a single confused list. The point of making a copy is to avoid this.

1 Like

I am enjoying the pseudocode that is accompanying this part of the course. Would have helped more in previous lectures and for practices.