Skip to content

Commit

Permalink
Python interview practise: Lockboxes.
Browse files Browse the repository at this point in the history
  • Loading branch information
Tafara-N committed Aug 31, 2024
1 parent 8238679 commit a1b5f19
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions 0x01-lockboxes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,38 +7,38 @@ For this project, you will need a solid understanding of several key concepts in
1. **Lists and List Manipulation:**

- Understanding how to work with lists, including accessing elements, iterating over lists, and modifying lists dynamically.
- [Python Lists (Python Official Documentation)](https://intranet.alxswe.com/rltoken/TtGNy9p1p1d0O5G1rdY1Aw)
- [Python Lists (Python Official Documentation)](https://docs.python.org/3/tutorial/datastructures.html)

2. **Graph Theory Basics:**

- Although not explicitly required, knowledge of graph theory (especially concepts related to traversal algorithms like Depth-First Search or Breadth-First Search) can be very helpful in solving this problem, as the boxes and keys can be thought of as nodes and edges in a graph.
- [Graph Theory (Khan Academy)](https://intranet.alxswe.com/rltoken/eVcYI8g-6nF0Na46xnRdhw)
- [Graph Theory (Khan Academy)](https://www.khanacademy.org/computing/computer-science/algorithms/graph-representation/a/representing-graphs)

3. **Algorithmic Complexity:**

- Understanding the time and space complexity of your solution is important, as it can help in writing more efficient algorithms.
- [Big O Notation (GeeksforGeeks)](https://intranet.alxswe.com/rltoken/01qym1qAJUkLrb47PvqnKg)
- [Big O Notation (GeeksforGeeks)](https://www.geeksforgeeks.org/asymptotic-notation-and-analysis-based-on-input-size-of-algorithms/)

4. **Recursion:**

- Some solutions might require a recursive approach to traverse through the boxes and keys.
- [Recursion in Python (Real Python)](https://intranet.alxswe.com/rltoken/zpEuvv0l9EHohIx-HwiAAA)
- [Recursion in Python (Real Python)](https://realpython.com/python-recursion/)

5. **Queue and Stack:**

- Knowing how to use queues and stacks is crucial if implementing a breadth-first search (BFS) or depth-first search (DFS) algorithm to traverse through the keys and boxes.
- [Python Queue and Stack (GeeksforGeeks)](https://intranet.alxswe.com/rltoken/CQLm4RJrdwyo2DAcNCtwIA)
- [Python Queue and Stack (GeeksforGeeks)](https://www.geeksforgeeks.org/queue-in-python/)

6. **Set Operations:**

- Understanding how to use sets for keeping track of visited boxes and available keys can optimize the search process.
- [Python Sets (Python Official Documentation)](https://intranet.alxswe.com/rltoken/zkmtaPqAbKyxx41kRw7ulA)
- [Python Sets (Python Official Documentation)](https://docs.python.org/3/tutorial/datastructures.html#sets)

By reviewing these concepts and utilizing these resources, you will be well-equipped to develop an efficient solution for this project, applying both your algorithmic thinking and Python programming skills.

# Additional Resources
## Additional Resources

- [Mock Technical Interview](https://intranet.alxswe.com/rltoken/TJ0FJhWeEGolIqMpwBn7Pg)
- [Mock Technical Interview](https://www.youtube.com/watch?v=V8DGdPkBBxg)

# Requirements

Expand Down Expand Up @@ -97,4 +97,4 @@ carrie@ubuntu:~/0x01-lockboxes$
Repo:
GitHub repository: alx-interview
Directory: 0x01-lockboxes
File: `0-lockboxes.py`
File: `0-lockboxes.py`

0 comments on commit a1b5f19

Please sign in to comment.