Computer Algorithms


Course Code: CSE 221
Credit Hour: 3
Course Group: Core Courses


 Review of Standard Algorithms: Methods; expression, making use of modules, selection, repetition, iteration and recursion, algorithm for accessing and updating files and for the management of indexes; algorithms for accessing and updating data structure; algorithms for merging two or more sequential files; algorithms for sorting; algorithms for searching ordered arrays, hash table searching. Structured Algorithm Design: Modularity; top-down design, development of algorithms; appropriate use of algorithmic constricts of selection; repetitions, interaction, and recursion; algorithms for parallel tasks; methods of describing and documenting algorithms; testing, evaluation and analysis of algorithms. Lecture contains back tracking, branch and bound, Basic search and traversal techniques, graph algorithms, algebraic simplification and transformations, lower bound theory, NP-hard and NP-complete problems.

Text Book:

  1. Sahni, Horowitz: Fundamentals of Computer Algorithms

 Reference Books:

  1. Thomas H. Corman, Charle E.L & Ronald:  Algorithms