Introduction to algorithms & Discrete Structures
**Major Requirement (for B.A. and B.S.)**
An introduction to the design and analysis of algorithms along with some of the discrete mathematical structures that are fundamental to the field of Computer Science. This course builds on the data structures topics from CSCI 235 by exploring efficient ways of using them to solve problems. Algorithm analysis topics include best, worst, and average case analysis of iterative and recursive algorithms; asymptotic notation; and solving recurrence relations. Algorithm design techniques include brute force, greedy, divideand-conquer, dynamic programming, and space/time tradeoff. Discrete structures topics include propositional logic, proof techniques (especially induction), sets, matrices, sequences and summations, and basic combinatorics
This course is usually taught by Dr. Cusack or Dr. DeJongh.
Comments from Previous Students:
- "In a short period of time I learned and understood a great deal of material that will be essential for my future in computer science instead of just memorizing information."
- "I learned how to think logically and was prepared for the next course of computer organization."
- "The material taught in this course was applicable to my life."
- "The course material was interesting and made me think."
- "I learned a new way of thinking in here."