DS approach mind map — [Notes]
2 min readAug 6, 2023
· #2 — Check constraints is very important
· #5 → Dry run
∘ Develop/Memorize dry run framework for all kind of problems
#2 — Check constraints is very important
🎯 If array is a number → +ve / -ve / 0?
🎯 Power of integer in power2 and power10
2^3.33 = 10
-> 31/3.33 = ~9
-> 32/3.33 = ~9
-2^31 = -10^9
-2^32 = 10^9
494. Target Sum
Input: nums = [1,1,1,1,1], target = 3
Output: 5
Explanation: There are 5 ways to assign symbols to make the sum of nums be target 3.
-1 + 1 + 1 + 1 + 1 = 3
+1 - 1 + 1 + 1 + 1 = 3
+1 + 1 - 1 + 1 + 1 = 3
+1 + 1 + 1 - 1 + 1 = 3
+1 + 1 + 1 + 1 - 1 = 3
Constraints:
1 <= nums.length <= 20
0 <= nums[i] <= 1000
0 <= sum(nums[i]) <= 1000
-1000 <= target <= 1000
------------------------
One of the testcase is
nums = [100]
target = -200
🎯 If String → empty/ null / unicode etc?
#5 → Dry run
When code fails to function properly, this is an excellent opportunity to learn and practise dry run. 💡
🎯 Two mangoes with 1 stone → dry run practise + problem found 😀
Develop/Memorize dry run framework for all kind of problems
- Recursion
- DP
- Graph
- Binary Search
- Two Pointer
- Sliding Window