projects from https://www.dailycodingproblem.com/
- 2: array multiplication
- 4: find missing integers in O(N) time an O(1) space
- 6: XOR doubly linked list
- 9: largest sum of non-adjacent numbers
- 12: addition combinations to reach a total
- 13: largest substring with limited characters
- 17: decompress directory listing
- 18: sub-array maximums
- 25: implement partial regex
- [ ]
- 3: serialize and deserialize binary tree
- 5: pairs
- 7: decode numbers to strings
- 10: job scheduler
- 11: find strings in array that start with a query string
- 14: estimate pi to 3 decimal places
- 15: pick random item from stream
- 19: unique values in a grid
- 22: squished string splitting
- 24: lockable binary tree
- 26: remove the kth last element from linked list
- 28: justify text exactly by adding spaces
- 30: water in 2D height graph
- 36: find the second largest node in a binary tree
- 1: max sum of 2 array items
- 8: count sub unival trees
- 16: record order logs
- 20: 2 singly linked list intersection
- 21: time slots
- 23: matrix maze navigation
- 27: test if sets of brackets "([{}])" are valid
- 29: encoding duplicate characters
node.py - binary tree or doubly linked list node classes