Pick a specific problem, investigate into its algorithms
Assignment question:
You are expected to pick a specific problem, investigate into its algorithms, study, e.g., how this algorithm works, why it work, how it can be extended to handle further generalizations and/or other related problems, whether or not its running time can be improved. You may also compare different algorithms for the same problem and investigate into, e.g., when one algorithm outperforms others, why it is better, what are their worst-case running times vs. average running time, etc.
You can also design your algorithm. Your algorithm does not necessarily need to work perfectly. If it may fail sometime, you can discuss when it fails, why it fails and if there is any alternative to patch it. If your algorithm cannot guarantee a good running time, you can discuss when it does not run efficiently. You may also choose to compare it with known algorithms and discuss when it is better and why.
Problem set: https://leetcode.com/problemset/algorithms/
Here it collects a huge number of algorithm related common questions. Pick any one of them to investigate as one assignment. If you are in a group, the group should work on two different problems for the two assignments.
You are free to check out the discussion board of each question on leetcode, or search and find any tutorial on the question you pick. But be aware that some of of claimed answers are not necessarily correct.
What to upload?
3 things:
A report summarizing your findings,
a 10 min oral presentation on your report,
and slides of your presentation ()
Evaluation:
Your presentation and report should target a general audience who are knowledgeable in algorithms, but not an expert in your particular problem. So you must clearly define your problem. Do not assume the audience to know it in advance.
Answer preview to pick a specific problem, investigate into its algorithms
APA
1033 words