IS115
Download as PDF
Algorithms and Programming
Course (UG/PG)
Offering Unit/Department
Course Description
Course Learning Outcomes
Students will be trained in the following competencies:
1. Understanding how an algorithm solves a problem
2. Explaining basic algorithms such as searching and sorting and applying them to solve problems
3. Applying iteration or recursion to design an algorithm
4. Analysing and comparing the complexities of different algorithms
5. Improving the complexity of algorithms by designing more efficient solutions
6. Demonstrating the ability to use fundamental data structures to solve problems
7. Implementing an algorithm in a programming language such as Python
8. Knowing the limits of computations, including concepts such as P, NP, NP-Complete, and NP-Hard
9. Contrast optimal and approximation solutions
10. Use heuristic strategies such as greedy algorithms to solve an intractable problem
1. Discover the science of computing
2. Model problems and learn practical problem-solving techniques to tackle complex computational problems.
3. Apply problem-solving techniques to develop more elegant and efficient programs
4. Learn to write programs to represent and manipulate with complex data objects
5. Understand the challenge of scale, not only in dealing with large data sets, but also in appreciating the nature of computing and computability
6. Derive the Big-O time complexity of an algorithm, and compare two algorithms in terms of time complexity.