Define Input - Output
- How Input is Stored.
- What kind of value are there.
- Are there any negative value.
- Will there be any Empty data.
- Can i assume there is always valid input.
- Will the size/number of data be greater that integer max value.
- Are we returning indexes/data.
- What if there is multiple Answer.
Check on Size - Range - Scale of data
- How big is the size of input.
- Do we take into account of integer overflow.
- Size of array or N or Length
- What should we do if the size of data count grater than Interger range.
- Suggest we can use linked list
- own custom data type.
Checking for running Enviroment
- What type of enviroment the algorithm will be running.
- Can I modify Original Data
- Can use Leatest Language Feature.
Walk Through Solution
Start Writing comment in Editor.
- Outline Step by Step
- What it is what you will be doing
Let them give feedback before you even start Programming
During Coding
Always speack What you are thinking
See if you can Divide problem into Subproblem
Seperate code into Logical unit
Discuss Tradeoff
- Consider Pros and Cons.
Are we Favouring Time Coplexity Over Space Complexity
Discuss about memory footprint because of recursion call
Came with own test case and test on it.
Explain time Complexity and Space Complexity.