Algorithms & Complexity
Learning Outcomes:
- Understanding fundamental algorithms, including sorting and searching
- Grasping the concepts of algorithm analysis and efficiency, including Big-Oh notation
- Mastering the concepts and implementations of binary search trees (BSTs) and abstract data types (ADTs)
- Learning the basics of balanced trees, specifically AVL trees, and their rotations
- Expanding knowledge on advanced data structures, including hash tables, heaps, and priority queues
- Delving into graph theory basics, including graph representations and properties of depth-first search (DFS) and breadth-first search (BFS)
- Beginning with dynamic programming concepts, transitioning to graph algorithms
- Understanding the applications of min-cost spanning trees and the mechanics of Kruskal's and Prim's algorithms
- Gaining insights into graph search algorithms, specifically DFS and BFS, and their use in establishing connectivity
- Exploring the theory and application of min-cost spanning trees, Union-Find data structure, and greedy algorithms
- Learning shortest path algorithms, with a focus on Dijkstra’s algorithm
- Studying advanced graph algorithm topics, such as handling distances with negative weights and the Floyd-Warshall algorithm
- Investigating graph coloring and its algorithmic implementations
Skills for module:
Algorithms
Java
Problem Solving
Critical Thinking
Time Management
Algorithms & Complexity
CS2860
Learning Outcomes
- Understanding fundamental algorithms, including sorting and searching
- Grasping the concepts of algorithm analysis and efficiency, including Big-Oh notation
- Mastering the concepts and implementations of binary search trees (BSTs) and abstract data types (ADTs)
- Learning the basics of balanced trees, specifically AVL trees, and their rotations
- Expanding knowledge on advanced data structures, including hash tables, heaps, and priority queues
- Delving into graph theory basics, including graph representations and properties of depth-first search (DFS) and breadth-first search (BFS)
- Beginning with dynamic programming concepts, transitioning to graph algorithms
- Understanding the applications of min-cost spanning trees and the mechanics of Kruskal's and Prim's algorithms
- Gaining insights into graph search algorithms, specifically DFS and BFS, and their use in establishing connectivity
- Exploring the theory and application of min-cost spanning trees, Union-Find data structure, and greedy algorithms
- Learning shortest path algorithms, with a focus on Dijkstra’s algorithm
- Studying advanced graph algorithm topics, such as handling distances with negative weights and the Floyd-Warshall algorithm
- Investigating graph coloring and its algorithmic implementations
Related Material
Related Material