Computational Methods I

Identifier
COMS 5010X
Professor(s)

Last Updated: Spring 2025

  1. Credits: 3 credit hours
  2. Textbook, title, author, and year: None
  3. Other supplemental materials: Access to a computer (preferably a laptop); a recent version of Python; a text editor or an Integrated Development Environment (IDE) that supports Python; an ssh client; and a git client

Course Information

  1. Brief description of the content of the course: Design of data structures and algorithms with an object-oriented programming methodology. Abstract data type specification and correctness. Collections including lists, stacks, queues, trees and hash tables. Searching and Sorting. Discrete mathematics concepts as applied to computer science. Basics of logic, set theory, functions, relations, combinatorics. Proof techniques such as induction and recursion.
  2. Prerequisites or co-requisites: Trigonometry or Calculus; background in Math equivalent to MATH 1650 and background in Computer Science equivalent to COMS 2270

Course Objectives

Upon completing this course, students will be able to do the following:

  • Read, write, and modify Python programs
  • Understand and use conditionals, iteration, and recursion
  • Understand and use fundamental data structures (lists, stacks, queues, trees, and hash tables)
  • Understand and use sorting and searching algorithms

List of Topics to Be Covered

  • Calling and writing functions.
  • Operators and types.
  • Conditionals.
  • Boolean expressions.
  • Loops.
  • Using objects.
  • Simple graphics.
  • Creating objects.
  • String manipulation.
  • File processing.
  • Lists (arrays).
  • 2D arrays.
  • Linear search.
  • Sorting algorithms.
  • Binary search.
  • Recursion.
  • Linked lists.
  • Hash tables.
  • Stacks and queues.
  • Binary trees.
  • Binary search trees.
  • Balancing.
  • Heaps.
  • Graphs