Analysis of PDSA Exam Topics
Analysis of PDSA Exam Topics
Based on the provided question papers, here's a categorized list of topics for the Programming,
Data Structures and Algorithms (PDSA) exam, organized by priority:
Asymptotic Analysis
Time complexity analysis of algorithms
Big O notation
Comparing growth rates of functions
Recurrence relations and their solutions
Sorting Algorithms
Quick Sort (worst case analysis, pivot selection)
Merge Sort (recurrence relation, implementation)
Selection Sort (number of swaps)
Insertion Sort (implementation with custom comparators)
Graph Algorithms
Breadth-First Search (BFS)
Depth-First Search (DFS)
Topological Sorting
Shortest Path Algorithms (Dijkstra's, Bellman-Ford)
Minimum Spanning Trees
Graph representations (adjacency matrix)
Network Flow and Min-Cut
Trees
Binary Search Trees (insertion, traversal)
Tree traversals (pre-order, post-order)
AVL Trees (height calculations)
Heap data structures (min-heap, max-heap)
Priority Queues
Dynamic Programming
Longest Increasing Subsequence
Longest Common Subsequence
Longest Decreasing Subsequence
Matrix Chain Multiplication
Optimal substructure identification
Greedy Algorithms
Task scheduling with deadlines
Huffman coding
Computational Complexity
NP-completeness
NP-hardness
Polynomial-time reductions
Miscellaneous
Binary Search implementation
Inversion counting in arrays
Linear Programming formulation
Independent sets and vertex covers in graphs
The exam heavily focuses on algorithm analysis, graph algorithms, and tree data structures, with
significant emphasis on dynamic programming and greedy approaches. Questions frequently
require understanding of theoretical concepts as well as practical implementation details.
⁂