This repository mirrors the problem sets from the structy.net website, offering a comprehensive collection of Python challenges in data structures and algorithms. These problems are structured to be tackled sequentially, ensuring a logical progression in learning, with tasks thoughtfully arranged below in chronological order. As part of the continued commitment to your success, this repository is currently undergoing exciting enhancements. Expect comprehensive test coverage for all problems, with some tests already completed, along with detailed comments to aid better understanding. Stay tuned for these exciting updates and happy coding! 🚀🚀
- Comprehensive Test Coverage: This repository is being enhanced to include thorough test cases for all problems, ensuring the correctness and efficiency of your code solutions.
- Detailed Comments: Detailed comments are being progressively added to the problems and solutions, providing deeper insights into the code, explaining the logic behind specific approaches, and enhancing your understanding of the algorithms and data structures involved.
- Bonus Questions: To further challenge your understanding and explore related concepts, bonus questions have been added to many topics. These questions delve deeper into the topics covered in the main problem and comments, providing additional opportunities for practice and learning.
- Difficulty Levels: The introduction of difficulty levels for each problem is planned, allowing you to progressively challenge yourself and learn at your own pace, starting with fundamental concepts and gradually advancing towards more complex tasks.
- Interactive Elements: The incorporation of interactive elements, such as quizzes or code challenges, is being explored. These elements aim to reinforce your learning and make the practice experience more engaging.
- Community Forum: The establishment of a community forum where users can share solutions, ask questions, and engage with each other is being considered. This collaborative environment hopes to foster learning and problem-solving skills.
000. hey programmer
001. max value
002. is prime
003. uncompress
004. compress
005. anagrams
006. most frequent char
007. pair sum
008. pair product
009. intersection
010. five sort
BONUS: sum of three values
BONUS: three sum
BONUS: longest palindrome
011. traversal
012. sum list
013. linked list find
014. get node value
015. reverse list
016. zipper lists
017. merge lists
018. is univalue list
019. longest streak
020. remove node
021. insert node
022. create linked list
023. add lists
024. depth first values
025. breadth first values
026. tree sum
027. tree includes
028. tree min value
029. max root to leaf path sum
030. tree path finder
031. tree value count
032. how high
033. bottom right value
034. all tree paths
035. tree level
036. level averages
037. leaf list
038. has path
039. undirected path
040. connected components count
041. largest component
042. shortest path
043. island count
044. minimum island
045. closest carrot
046. longest path
047. semesters required
048. best bridge
049. has cycle
050. prereqs possible
051. knight attack
052. fib
053. tribonacci
054. sum possible
055. min change
056. count path
057. max path sum
058. non adjacent sum
059. summing squares
060. counting change
061. array stepper
062. max palin subsequence
063. overlap subsequence
064. can concat
065. quickest concat
066. knightly number
BONUS: house robber
BONUS: palindromic strings
BONUS: word break
BONUS: count bits
BONUS: 0/1 knapsack
BONUS: 01 matrix
067. paired parentheses
068. befitting brackets
069. decompress braces
070. nesting score
BONUS: reverse stack