A collection of materials I've practiced or solved to strengthen my data structures and algorithms knowledge. (Missing a number of problems I've solved using websites)
-
Hashmap
- twoSum.py
- is_unique.py
- is_permutation.py
- permutation_palinedrome.py
-
String manipulation
- urlify.py
- one_away.py
- string_compression.py
- string_rotation.py
- unique_emails.py
-
Array
- longest_palinedrome.py
- rotate_matrix.cpp
- zero_matrix.cpp
- flip.py
-
Linked List (implemented in C++)
- remove_dups.cpp
- kth_to_last.cpp
- remove_middle_node.cpp
- partition.cpp
- sum_list.cpp
- check_palindrome.cpp
- find_intersection.cpp
- detect_loop.cpp
-
Tree & Heap (implemented in Python)
- range_sum.py
- merge_trees.py
-
Dymanic Programming
- coin_change.py
- longest_increase_subseq.py
- edit_dist.py
-
Python
- twoSum.py
- is_unique.py
- is_permutation.py
- urlify.py
- longest_palinedrome.py
- permutation_palinedrome.py
- one_away.py
- string_compression.py
- string_rotation.py
- flip.py
- unique_emails.py
- range_sum.py
- merge_trees.py
- coin_change.py
- longest_increase_subseq.py
- edit_dist.py
-
C++
- rotate_matrix.cpp
- zero_matrix.cpp
- remove_dups.cpp
- kth_to_last.cpp
- remove_middle_node.cpp
- partition.cpp
- sum_list.cpp
- check_palindrome.cpp
- find_intersection.cpp
- detect_loop.cpp